[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-58?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12609000#action_12609000
 ] 

fpj edited comment on ZOOKEEPER-58 at 6/28/08 4:39 AM:
--------------------------------------------------------------------------

New patch, moved added code to startConnect().

      was (Author: fpj):
    New patch
  
> Race condition on ClientCnxn.java
> ---------------------------------
>
>                 Key: ZOOKEEPER-58
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-58
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: java client
>            Reporter: Flavio Paiva Junqueira
>            Assignee: Flavio Paiva Junqueira
>         Attachments: patch-incoming-race.txt
>
>
> There is a race condition involving the ByteByffer incomingBuffer, a field of 
> ClientCnxn.SendThread. SendThread reads a packet in two steps: first it reads 
> the length of the packet, followed by a read of the packet itself. Each of 
> these steps corresponds to a call to doIO() from the main loop of run(). If 
> there is an exception or the session times out, then it may leave 
> incomingBuffer in an inconsistent state. 
> The attached patch adds code to reset incomingBuffer upon a call to 
> SendThread.cleanup(). This method is called upon an exception on run().

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to