Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 2.7.2
    • Fix Version/s: 3.0.0-alpha2
    • Component/s: io
    • Labels:
      None
    • Target Version/s:
    • Hadoop Flags:
      Reviewed

      Description

      If you could make Hadoop Paths serializable, you can use them in Spark operations without having to convert them to and from URIs.

      It's trivial for paths to support this; as well as the OS code we need to add a check that there's no null URI coming in over the wire, and test to validate round tripping

      1. HADOOP-13519-branch-2-001.patch
        54 kB
        Steve Loughran
      2. HADOOP-13519-branch-2-002.patch
        3 kB
        Steve Loughran

        Issue Links

          Activity

          Hide
          stevel@apache.org Steve Loughran added a comment -

          patch 001; declares the path implements serializable, made up a serialization version number and a round trip test.

          Also tested in spark, without it you see a stack trace starting

           Cause: java.io.NotSerializableException: org.apache.hadoop.fs.Path
          Serialization stack:
          	- object not serializable (class: org.apache.hadoop.fs.Path, value: /test/filegenerator)
          
          Show
          stevel@apache.org Steve Loughran added a comment - patch 001; declares the path implements serializable, made up a serialization version number and a round trip test. Also tested in spark, without it you see a stack trace starting Cause: java.io.NotSerializableException: org.apache.hadoop.fs.Path Serialization stack: - object not serializable (class: org.apache.hadoop.fs.Path, value: /test/filegenerator)
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 14s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 3 new or modified test files.
          0 mvndep 1m 8s Maven dependency ordering for branch
          +1 mvninstall 6m 52s branch-2 passed
          +1 compile 6m 34s branch-2 passed with JDK v1.8.0_101
          +1 compile 6m 51s branch-2 passed with JDK v1.7.0_111
          +1 checkstyle 1m 24s branch-2 passed
          +1 mvnsite 1m 21s branch-2 passed
          +1 mvneclipse 1m 22s branch-2 passed
          +1 findbugs 2m 21s branch-2 passed
          +1 javadoc 1m 9s branch-2 passed with JDK v1.8.0_101
          +1 javadoc 1m 19s branch-2 passed with JDK v1.7.0_111
          0 mvndep 0m 16s Maven dependency ordering for patch
          +1 mvninstall 1m 4s the patch passed
          +1 compile 6m 11s the patch passed with JDK v1.8.0_101
          +1 javac 6m 11s the patch passed
          +1 compile 6m 47s the patch passed with JDK v1.7.0_111
          +1 javac 6m 47s the patch passed
          -0 checkstyle 1m 30s root: The patch generated 15 new + 77 unchanged - 0 fixed = 92 total (was 77)
          +1 mvnsite 1m 26s the patch passed
          +1 mvneclipse 0m 35s the patch passed
          -1 whitespace 0m 0s The patch has 47 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply
          +1 findbugs 2m 50s the patch passed
          +1 javadoc 1m 8s the patch passed with JDK v1.8.0_101
          +1 javadoc 1m 23s the patch passed with JDK v1.7.0_111
          +1 unit 8m 45s hadoop-common in the patch passed with JDK v1.7.0_111.
          +1 unit 0m 22s hadoop-aws in the patch passed with JDK v1.7.0_111.
          +1 asflicense 0m 27s The patch does not generate ASF License warnings.
          97m 3s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:b59b8b7
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824632/HADOOP-13519-branch-2-001.patch
          JIRA Issue HADOOP-13519
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux 441c8a905c6e 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision branch-2 / 6dba38f
          Default Java 1.7.0_111
          Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_101 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_111
          findbugs v3.0.0
          checkstyle https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/artifact/patchprocess/diff-checkstyle-root.txt
          whitespace https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/artifact/patchprocess/whitespace-eol.txt
          JDK v1.7.0_111 Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/testReport/
          modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
          Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/console
          Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 14s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 3 new or modified test files. 0 mvndep 1m 8s Maven dependency ordering for branch +1 mvninstall 6m 52s branch-2 passed +1 compile 6m 34s branch-2 passed with JDK v1.8.0_101 +1 compile 6m 51s branch-2 passed with JDK v1.7.0_111 +1 checkstyle 1m 24s branch-2 passed +1 mvnsite 1m 21s branch-2 passed +1 mvneclipse 1m 22s branch-2 passed +1 findbugs 2m 21s branch-2 passed +1 javadoc 1m 9s branch-2 passed with JDK v1.8.0_101 +1 javadoc 1m 19s branch-2 passed with JDK v1.7.0_111 0 mvndep 0m 16s Maven dependency ordering for patch +1 mvninstall 1m 4s the patch passed +1 compile 6m 11s the patch passed with JDK v1.8.0_101 +1 javac 6m 11s the patch passed +1 compile 6m 47s the patch passed with JDK v1.7.0_111 +1 javac 6m 47s the patch passed -0 checkstyle 1m 30s root: The patch generated 15 new + 77 unchanged - 0 fixed = 92 total (was 77) +1 mvnsite 1m 26s the patch passed +1 mvneclipse 0m 35s the patch passed -1 whitespace 0m 0s The patch has 47 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply +1 findbugs 2m 50s the patch passed +1 javadoc 1m 8s the patch passed with JDK v1.8.0_101 +1 javadoc 1m 23s the patch passed with JDK v1.7.0_111 +1 unit 8m 45s hadoop-common in the patch passed with JDK v1.7.0_111. +1 unit 0m 22s hadoop-aws in the patch passed with JDK v1.7.0_111. +1 asflicense 0m 27s The patch does not generate ASF License warnings. 97m 3s Subsystem Report/Notes Docker Image:yetus/hadoop:b59b8b7 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824632/HADOOP-13519-branch-2-001.patch JIRA Issue HADOOP-13519 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 441c8a905c6e 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision branch-2 / 6dba38f Default Java 1.7.0_111 Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_101 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_111 findbugs v3.0.0 checkstyle https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/artifact/patchprocess/diff-checkstyle-root.txt whitespace https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/artifact/patchprocess/whitespace-eol.txt JDK v1.7.0_111 Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/testReport/ modules C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: . Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10312/console Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
          Hide
          stevel@apache.org Steve Loughran added a comment -

          I accidentally branched this off the WiP S3A globber work, hence the many checkstyle failures. I'll reapply the common patches to branch-2 and resubmit

          Show
          stevel@apache.org Steve Loughran added a comment - I accidentally branched this off the WiP S3A globber work, hence the many checkstyle failures. I'll reapply the common patches to branch-2 and resubmit
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 22s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 1 new or modified test files.
          +1 mvninstall 6m 21s branch-2 passed
          +1 compile 5m 24s branch-2 passed with JDK v1.8.0_101
          +1 compile 6m 21s branch-2 passed with JDK v1.7.0_101
          +1 checkstyle 0m 26s branch-2 passed
          +1 mvnsite 0m 58s branch-2 passed
          +1 mvneclipse 0m 15s branch-2 passed
          +1 findbugs 1m 38s branch-2 passed
          +1 javadoc 0m 47s branch-2 passed with JDK v1.8.0_101
          +1 javadoc 0m 56s branch-2 passed with JDK v1.7.0_101
          +1 mvninstall 0m 41s the patch passed
          +1 compile 5m 22s the patch passed with JDK v1.8.0_101
          +1 javac 5m 22s the patch passed
          +1 compile 6m 24s the patch passed with JDK v1.7.0_101
          +1 javac 6m 24s the patch passed
          +1 checkstyle 0m 25s the patch passed
          +1 mvnsite 0m 58s the patch passed
          +1 mvneclipse 0m 15s the patch passed
          -1 whitespace 0m 0s The patch has 47 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply
          +1 findbugs 1m 53s the patch passed
          +1 javadoc 0m 44s the patch passed with JDK v1.8.0_101
          +1 javadoc 0m 57s the patch passed with JDK v1.7.0_101
          +1 unit 8m 15s hadoop-common in the patch passed with JDK v1.7.0_101.
          +1 asflicense 0m 22s The patch does not generate ASF License warnings.
          59m 51s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:b59b8b7
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824693/HADOOP-13519-branch-2-002.patch
          JIRA Issue HADOOP-13519
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux 82bf16b3a936 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision branch-2 / fff0418
          Default Java 1.7.0_101
          Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_101 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_101
          findbugs v3.0.0
          whitespace https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/artifact/patchprocess/whitespace-eol.txt
          JDK v1.7.0_101 Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/testReport/
          modules C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
          Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/console
          Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 22s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 1 new or modified test files. +1 mvninstall 6m 21s branch-2 passed +1 compile 5m 24s branch-2 passed with JDK v1.8.0_101 +1 compile 6m 21s branch-2 passed with JDK v1.7.0_101 +1 checkstyle 0m 26s branch-2 passed +1 mvnsite 0m 58s branch-2 passed +1 mvneclipse 0m 15s branch-2 passed +1 findbugs 1m 38s branch-2 passed +1 javadoc 0m 47s branch-2 passed with JDK v1.8.0_101 +1 javadoc 0m 56s branch-2 passed with JDK v1.7.0_101 +1 mvninstall 0m 41s the patch passed +1 compile 5m 22s the patch passed with JDK v1.8.0_101 +1 javac 5m 22s the patch passed +1 compile 6m 24s the patch passed with JDK v1.7.0_101 +1 javac 6m 24s the patch passed +1 checkstyle 0m 25s the patch passed +1 mvnsite 0m 58s the patch passed +1 mvneclipse 0m 15s the patch passed -1 whitespace 0m 0s The patch has 47 line(s) that end in whitespace. Use git apply --whitespace=fix <<patch_file>>. Refer https://git-scm.com/docs/git-apply +1 findbugs 1m 53s the patch passed +1 javadoc 0m 44s the patch passed with JDK v1.8.0_101 +1 javadoc 0m 57s the patch passed with JDK v1.7.0_101 +1 unit 8m 15s hadoop-common in the patch passed with JDK v1.7.0_101. +1 asflicense 0m 22s The patch does not generate ASF License warnings. 59m 51s Subsystem Report/Notes Docker Image:yetus/hadoop:b59b8b7 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824693/HADOOP-13519-branch-2-002.patch JIRA Issue HADOOP-13519 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 82bf16b3a936 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision branch-2 / fff0418 Default Java 1.7.0_101 Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_101 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_101 findbugs v3.0.0 whitespace https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/artifact/patchprocess/whitespace-eol.txt JDK v1.7.0_101 Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/testReport/ modules C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10323/console Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
          Hide
          chris.douglas Chris Douglas added a comment -

          +1 (whitespace looks fine, not sure why Jenkins is complaining).

          Why a float constant in hex?

          +  private static final long serialVersionUID = 0xad00f;
          
          Show
          chris.douglas Chris Douglas added a comment - +1 (whitespace looks fine, not sure why Jenkins is complaining). Why a float constant in hex? + private static final long serialVersionUID = 0xad00f;
          Hide
          stevel@apache.org Steve Loughran added a comment -

          It's actually trying to be pronounceable, "adoof"

          Show
          stevel@apache.org Steve Loughran added a comment - It's actually trying to be pronounceable, "adoof"
          Hide
          chris.douglas Chris Douglas added a comment -

          It's actually trying to be pronounceable, "adoof"

          ...in Scotland?

          Anyway, I committed this. Thanks, Steve

          Show
          chris.douglas Chris Douglas added a comment - It's actually trying to be pronounceable, "adoof" ...in Scotland? Anyway, I committed this. Thanks, Steve
          Hide
          hudson Hudson added a comment -

          SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10413 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10413/)
          HADOOP-13519. Make Path Serializable. Contributed by Steve Loughran (cdouglas: rev 1192781a78e7fcfcbf01b15de5d5a1f22d982e0d)

          • (edit) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestPath.java
          • (edit) hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java
          Show
          hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10413 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10413/ ) HADOOP-13519 . Make Path Serializable. Contributed by Steve Loughran (cdouglas: rev 1192781a78e7fcfcbf01b15de5d5a1f22d982e0d) (edit) hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/fs/TestPath.java (edit) hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/Path.java

            People

            • Assignee:
              stevel@apache.org Steve Loughran
              Reporter:
              stevel@apache.org Steve Loughran
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development