[
https://issues.apache.org/jira/browse/HADOOP-9485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13647762#comment-13647762
]
Colin Patrick McCabe commented on HADOOP-9485:
----------------------------------------------
I think the issue here is that running without XML defaults works in branch-1,
and when upgrading to branch-2 or a distribution based on that, people view
this kind of regression as a stumbling block.
bq. Why is it risky to change the default in the code to match the default from
the XML file?
Currently, you can set {{hadoop.rpc.socket.factory.class.default = null}} and
we'll use {{SocketFactory.getDefault()}}. If we change this behavior we may
break users who are relying on it. It certainly breaks {{TestSaslRPC}}. It
would be an incompatible change that would probably cause problems for users.
I suppose we could make the code default to the same thing as the XML file, but
not change the meaning of setting the key to null. That might work.
> inconsistent defaults for hadoop.rpc.socket.factory.class.default
> -----------------------------------------------------------------
>
> Key: HADOOP-9485
> URL: https://issues.apache.org/jira/browse/HADOOP-9485
> Project: Hadoop Common
> Issue Type: Bug
> Components: net
> Affects Versions: 2.0.5-beta
> Reporter: Colin Patrick McCabe
> Assignee: Colin Patrick McCabe
> Priority: Minor
> Attachments: HADOOP-9485.001.patch, HADOOP-9485.002.patch,
> HADOOP-9485.003.patch, HADOOP-9485.004.patch, HADOOP-9485.005.patch
>
>
> In {{core-default.xml}}, {{hadoop.rpc.socket.factory.class.default}} defaults
> to {{org.apache.hadoop.net.StandardSocketFactory}}. However, in
> {{CommonConfigurationKeysPublic.java}}, there is no default for this key.
> This is inconsistent (defaults in the code versus defaults in the XML files
> should match.) It also leads to problems with {{RemoteBlockReader2}}, since
> the default {{SocketFactory}} creates a {{Socket}} without an associated
> channel. {{RemoteBlockReader2}} cannot use such a {{Socket}}.
> This bug only really becomes apparent when you create a {{Configuration}}
> using the {{Configuration(loadDefaults=true)}} constructor. Thanks to AB
> Srinivasan for his help in discovering this bug.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira