Hadoop Common
  1. Hadoop Common
  2. HADOOP-7693

fix RPC.Server#addProtocol to work in AvroRpcEngine

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.0.0-alpha
    • Component/s: ipc
    • Labels:
      None

      Description

      HADOOP-7524 introduced a new way of passing protocols to RPC servers, but it was not implemented correctly by AvroRpcEngine in that issue. This is required to fix HDFS-2298.

      1. HADOOP-7693.patch
        9 kB
        Doug Cutting
      2. HADOOP-7693.patch
        6 kB
        Doug Cutting

        Issue Links

          Activity

          Hide
          Doug Cutting added a comment -

          Here's a patch for this.

          Show
          Doug Cutting added a comment - Here's a patch for this.
          Hide
          Doug Cutting added a comment -

          Here's a new version of the patch that adds tests. The test required loosening the signature of RPC.Server#addProtocol(). This used to require that added protocols implemented VersionedProtocol, which isn't required for AvroRpcEngine, since Avro handles protocol versioning differently.

          Show
          Doug Cutting added a comment - Here's a new version of the patch that adds tests. The test required loosening the signature of RPC.Server#addProtocol(). This used to require that added protocols implemented VersionedProtocol, which isn't required for AvroRpcEngine, since Avro handles protocol versioning differently.
          Hide
          Hadoop QA added a comment -

          +1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12497026/HADOOP-7693.patch
          against trunk revision .

          +1 @author. The patch does not contain any @author tags.

          +1 tests included. The patch appears to include 3 new or modified tests.

          +1 javadoc. The javadoc tool did not generate any warning messages.

          +1 javac. The applied patch does not increase the total number of javac compiler warnings.

          +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

          +1 release audit. The applied patch does not increase the total number of release audit warnings.

          +1 core tests. The patch passed unit tests in .

          +1 contrib tests. The patch passed contrib unit tests.

          Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/245//testReport/
          Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/245//console

          This message is automatically generated.

          Show
          Hadoop QA added a comment - +1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12497026/HADOOP-7693.patch against trunk revision . +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 3 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in . +1 contrib tests. The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-HADOOP-Build/245//testReport/ Console output: https://builds.apache.org/job/PreCommit-HADOOP-Build/245//console This message is automatically generated.
          Hide
          Aaron T. Myers added a comment -

          +1, the patch looks good to me.

          One tiny nit: You might consider putting a space after the "," in your generic type declarations, e.g.:

          private Map<String,Responder> responders = new HashMap<String,Responder>();
          
          Show
          Aaron T. Myers added a comment - +1, the patch looks good to me. One tiny nit: You might consider putting a space after the "," in your generic type declarations, e.g.: private Map< String ,Responder> responders = new HashMap< String ,Responder>();
          Hide
          Doug Cutting added a comment -

          Committed to trunk, but not yet to 0.23 branch.

          Show
          Doug Cutting added a comment - Committed to trunk, but not yet to 0.23 branch.
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Hdfs-trunk-Commit #1065 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk-Commit/1065/)
          HADOOP-7693. Moving to 0.24 section for now.
          HADOOP-7693. Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724.

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Show
          Hudson added a comment - Integrated in Hadoop-Hdfs-trunk-Commit #1065 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk-Commit/1065/ ) HADOOP-7693 . Moving to 0.24 section for now. HADOOP-7693 . Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724 . cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Common-trunk-Commit #987 (See https://builds.apache.org/job/Hadoop-Common-trunk-Commit/987/)
          HADOOP-7693. Moving to 0.24 section for now.
          HADOOP-7693. Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724.

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Show
          Hudson added a comment - Integrated in Hadoop-Common-trunk-Commit #987 (See https://builds.apache.org/job/Hadoop-Common-trunk-Commit/987/ ) HADOOP-7693 . Moving to 0.24 section for now. HADOOP-7693 . Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724 . cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Mapreduce-trunk-Commit #1009 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Commit/1009/)
          HADOOP-7693. Moving to 0.24 section for now.
          HADOOP-7693. Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724.

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Show
          Hudson added a comment - Integrated in Hadoop-Mapreduce-trunk-Commit #1009 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Commit/1009/ ) HADOOP-7693 . Moving to 0.24 section for now. HADOOP-7693 . Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724 . cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Hdfs-trunk #816 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/816/)
          HADOOP-7693. Moving to 0.24 section for now.
          HADOOP-7693. Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724.

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Show
          Hudson added a comment - Integrated in Hadoop-Hdfs-trunk #816 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/816/ ) HADOOP-7693 . Moving to 0.24 section for now. HADOOP-7693 . Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724 . cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Mapreduce-trunk #846 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/846/)
          HADOOP-7693. Moving to 0.24 section for now.
          HADOOP-7693. Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724.

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt

          cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399
          Files :

          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java
          • /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Show
          Hudson added a comment - Integrated in Hadoop-Mapreduce-trunk #846 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/846/ ) HADOOP-7693 . Moving to 0.24 section for now. HADOOP-7693 . Enhance AvroRpcEngine to support the new #addProtocol introduced in HADOOP-724 . cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177408 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt cutting : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1177399 Files : /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/AvroRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/RPC.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/WritableRpcEngine.java /hadoop/common/trunk/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/ipc/TestAvroRpc.java
          Hide
          Tsz Wo Nicholas Sze added a comment -

          I have merged this to 0.23.

          Show
          Tsz Wo Nicholas Sze added a comment - I have merged this to 0.23.

            People

            • Assignee:
              Doug Cutting
              Reporter:
              Doug Cutting
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development