hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Colin Patrick McCabe (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-9485) inconsistent defaults for hadoop.rpc.socket.factory.class.default
Date Thu, 02 May 2013 18:08:16 GMT

    [ 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

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

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

View raw message