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
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

Mime
View raw message