Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-6904

A baby step towards inter-version RPC communications

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.22.0
    • Fix Version/s: 0.23.0
    • Component/s: ipc
    • Labels:
      None
    • Hadoop Flags:
      Incompatible change, Reviewed

      Description

      Currently RPC communications in Hadoop is very strict. If a client has a different version from that of the server, a VersionMismatched exception is thrown and the client can not connect to the server. This force us to update both client and server all at once if a RPC protocol is changed. But sometime different versions do not mean the client & server are not compatible. It would be nice if we could relax this restriction and allows us to support inter-version communications.

      My idea is that DfsClient catches VersionMismatched exception when it connects to NameNode. It then checks if the client & the server is compatible. If yes, it sets the NameNode version in the dfs client and allows the client to continue talking to NameNode. Otherwise, rethrow the VersionMismatch exception.

        Attachments

        1. majorMinorVersion.patch
          16 kB
          Hairong Kuang
        2. majorMinorVersion1.patch
          19 kB
          Hairong Kuang
        3. rpcCompatible-trunk.patch
          22 kB
          Hairong Kuang
        4. rpcCompatible-trunk1.patch
          29 kB
          Hairong Kuang
        5. rpcCompatible-trunk10.patch
          43 kB
          Hairong Kuang
        6. rpcCompatible-trunk11.patch
          43 kB
          Hairong Kuang
        7. rpcCompatible-trunk2.patch
          34 kB
          Hairong Kuang
        8. rpcCompatible-trunk4.patch
          36 kB
          Hairong Kuang
        9. rpcCompatible-trunk5.patch
          37 kB
          Hairong Kuang
        10. rpcCompatible-trunk6.patch
          37 kB
          Hairong Kuang
        11. rpcCompatible-trunk7.patch
          37 kB
          Hairong Kuang
        12. rpcCompatible-trunk8.patch
          38 kB
          Hairong Kuang
        13. rpcCompatible-trunk9.patch
          38 kB
          Hairong Kuang
        14. rpcVersion.patch
          17 kB
          Hairong Kuang
        15. rpcVersion1.patch
          18 kB
          Hairong Kuang

          Issue Links

            Activity

              People

              • Assignee:
                hairong Hairong Kuang
                Reporter:
                hairong Hairong Kuang
              • Votes:
                0 Vote for this issue
                Watchers:
                20 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: