[ 
https://issues.apache.org/jira/browse/THRIFT-3060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James E. King III resolved THRIFT-3060.
---------------------------------------
       Resolution: Fixed
         Assignee: James E. King III
    Fix Version/s: 0.13.0

Note - the offline_queue is no guarantee that a request is going to get to the 
server in the face of disconnections.  Clients should timeout their requests 
and re-issue them instead of relying on this offline_queue.  See commends in 
the PR discussion thread as to why offline_queue may drop or never deliver a 
request.

> Node.js client retry logic doesn't flush offline queue on reconnect
> -------------------------------------------------------------------
>
>                 Key: THRIFT-3060
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3060
>             Project: Thrift
>          Issue Type: Bug
>          Components: Node.js - Library
>    Affects Versions: 0.9.2
>            Reporter: Chris Thompson
>            Assignee: James E. King III
>            Priority: Minor
>             Fix For: 0.13.0
>
>         Attachments: thrift-3060-fix_retry_logic.patch
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> The Node.js client includes retry logic in case the connection terminates 
> unexpectedly.  On reconnect, the `offline_queue` variable never gets reset, 
> so any requests still in the queue will get processed on every reconnect.
> In addition, the variables the keep track of the retry state are not 
> initialized prior to a successful connection, meaning that if the initial 
> connection doesn't succeed, that the retry timer is set to `NaN` and doesn't 
> work as expected.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to