Removal of Avro broke non-PB NN services
----------------------------------------
Key: HDFS-2694
URL: https://issues.apache.org/jira/browse/HDFS-2694
Project: Hadoop HDFS
Issue Type: Bug
Components: name-node
Affects Versions: 0.24.0
Reporter: Aaron T. Myers
Assignee: Aaron T. Myers
RpcEngine implementations have to register themselves associated with an RpcKind. Both WritableRpcEngine
and ProtobufRpcEngine do this registration in static initialization blocks. It used to be
that the static initializer block for WritableRpcEngine was triggered when AvroRpcEngine was
initialized, since this instantiated a WritableRpcEngine object. With AvroRpcEngine gone,
there's nothing in the NN to trigger the WritableRpcEngine static initialization block. Therefore,
those RPC services which still use Writable and not PB no longer work.
For example, if I try to run `hdfs groups' on trunk, which uses the GetUserMappingsProtocol,
this error gets spit out:
{noformat}
$ hdfs groups
log4j:ERROR Could not find value for key log4j.appender.NullAppender
log4j:ERROR Could not instantiate appender named "NullAppender".
Exception in thread "main" java.io.IOException: Unknown rpc kind RPC_WRITABLE
at org.apache.hadoop.ipc.Client.call(Client.java:1136)
at org.apache.hadoop.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:205)
at $Proxy6.getGroupsForUser(Unknown Source)
at org.apache.hadoop.tools.GetGroupsBase.run(GetGroupsBase.java:71)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:69)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:83)
at org.apache.hadoop.hdfs.tools.GetGroups.main(GetGroups.java:56)
{noformat}
--
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
|