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

Patrick Hunt commented on ZOOKEEPER-1197:
-----------------------------------------

afaik this is not a solvable problem short of implementing the client/server 
side properly - ala ZOOKEEPER-1346

Should we close this? (as unfixable)

> Incorrect socket handling of 4 letter words for NIO
> ---------------------------------------------------
>
>                 Key: ZOOKEEPER-1197
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1197
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>    Affects Versions: 3.3.3, 3.4.0
>            Reporter: Camille Fournier
>            Assignee: Camille Fournier
>            Priority: Critical
>             Fix For: 3.5.0
>
>         Attachments: long_4lw.patch, ZOOKEEPER-1197.patch, 
> ZOOKEEPER-1197_shutdown.patch
>
>
> When transferring a large amount of information from a 4 letter word, 
> especially in interactive mode (telnet or nc) over a slower network link, the 
> connection can be closed before all of the data has reached the client. This 
> is due to the way we handle nc non-interactive mode, by cancelling the 
> selector key. 
> Instead of cancelling the selector key for 4-letter-words, we should instead 
> flag the NIOServerCnxn to ignore detection of a close condition on that 
> socket (CancelledKeyException, EndOfStreamException). Since the 4lw will 
> close the connection immediately upon completion, this should be safe to do. 
> See ZOOKEEPER-737 for more details



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to