[
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