diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index cd3ac4e46fa..c74c3048caf 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -358,17 +358,19 @@ Release 2.1.0-beta - UNRELEASED HADOOP-8886. Remove KFS support. (eli) - HADOOP-9163 The rpc msg in ProtobufRpcEngine.proto should be moved out to + HADOOP-9163. [RPC v9] The rpc msg in ProtobufRpcEngine.proto should be moved out to avoid an extra copy (Sanjay Radia) - HADOOP-9151 Include RPC error info in RpcResponseHeader instead of sending + HADOOP-9151. [RPC v9] Include RPC error info in RpcResponseHeader instead of sending it separately (sanjay Radia) - HADOOP-9380 Add totalLength to rpc response (sanjay Radia) + HADOOP-9380. [RPC v9] Add totalLength to rpc response (sanjay Radia) - HADOOP-9425 Add error codes to rpc-response (sanjay Radia) + HADOOP-9425. [RPC v9] Add error codes to rpc-response (sanjay Radia) - HADOOP-9194. RPC support for QoS. (Junping Du via llu) + HADOOP-9194. [RPC v9] RPC support for QoS. (Junping Du via llu) + + HADOOP-9630. [RPC v9] Remove IpcSerializationType. (Junping Du via llu) NEW FEATURES diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java index c0ece8c7d34..22ace44c5c1 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Client.java @@ -750,8 +750,6 @@ public class Client { * +----------------------------------+ * | Authmethod (1 byte) | * +----------------------------------+ - * | IpcSerializationType (1 byte) | - * +----------------------------------+ */ private void writeConnectionHeader(OutputStream outStream) throws IOException { @@ -761,7 +759,6 @@ public class Client { out.write(Server.CURRENT_VERSION); out.write(serviceClass); authMethod.write(out); - Server.IpcSerializationType.PROTOBUF.write(out); out.flush(); } diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java index c54c0c3f0e9..5beac94243e 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java @@ -164,22 +164,6 @@ public abstract class Server { */ public static final ByteBuffer HEADER = ByteBuffer.wrap("hrpc".getBytes()); - /** - * Serialization type for ConnectionContext and RpcRequestHeader - */ - public enum IpcSerializationType { - // Add new serialization type to the end without affecting the enum order - PROTOBUF; - - void write(DataOutput out) throws IOException { - out.writeByte(this.ordinal()); - } - - static IpcSerializationType fromByte(byte b) { - return IpcSerializationType.values()[b]; - } - } - /** * If the user accidentally sends an HTTP GET to an IPC port, we detect this * and send back a nicer response. @@ -1322,7 +1306,7 @@ public abstract class Server { if (!connectionHeaderRead) { //Every connection is expected to send the header. if (connectionHeaderBuf == null) { - connectionHeaderBuf = ByteBuffer.allocate(4); + connectionHeaderBuf = ByteBuffer.allocate(3); } count = channelRead(channel, connectionHeaderBuf); if (count < 0 || connectionHeaderBuf.remaining() > 0) { @@ -1355,13 +1339,6 @@ public abstract class Server { return -1; } - IpcSerializationType serializationType = IpcSerializationType - .fromByte(connectionHeaderBuf.get(3)); - if (serializationType != IpcSerializationType.PROTOBUF) { - respondUnsupportedSerialization(serializationType); - return -1; - } - dataLengthBuffer.clear(); if (authMethod == null) { throw new IOException("Unable to read authentication method"); @@ -1554,18 +1531,6 @@ public abstract class Server { } } - private void respondUnsupportedSerialization(IpcSerializationType st) throws IOException { - String errMsg = "Server IPC version " + CURRENT_VERSION - + " do not support serilization " + st.toString(); - ByteArrayOutputStream buffer = new ByteArrayOutputStream(); - - Call fakeCall = new Call(-1, null, this); - setupResponse(buffer, fakeCall, - RpcStatusProto.FATAL, RpcErrorCodeProto.FATAL_UNSUPPORTED_SERIALIZATION, - null, IpcException.class.getName(), errMsg); - responder.doRespond(fakeCall); - } - private void setupHttpRequestOnIpcPortResponse() throws IOException { Call fakeCall = new Call(0, null, this); fakeCall.setResponse(ByteBuffer.wrap(