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

Todd Lipcon commented on HDFS-3721:
-----------------------------------

I have a fix for this, that rewrites BlockReceiver and RemoteBlockReader2 to 
handle variable-length packet headers. Unfortunately, since it modifies the 
server side, it still doesn't allow a new client to write to an old server 
(just read).

I'm trying to think of a creative way to fix this issue -- perhaps adding a 
flag in the response to "writeBlock" which indicates 
{{supportsVariableLengthPacketHeader}}. If the flag isn't set, then hsync 
wouldn't be supported on this stream, and it would fall back to the old fixed 
format header.
                
> hsync support broke wire compatibility
> --------------------------------------
>
>                 Key: HDFS-3721
>                 URL: https://issues.apache.org/jira/browse/HDFS-3721
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: data-node, hdfs client
>    Affects Versions: 2.1.0-alpha
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>            Priority: Critical
>
> HDFS-744 added support for hsync to the data transfer wire protocol. However, 
> it actually broke wire compatibility: if the client has hsync support but the 
> server does not, the client cannot read or write data on the old cluster.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to