Details

    • Target Version/s:

      Description

      Trying to diagnose a slow HDFS flush, taking longer than 10 seconds, but did not know which DNs were involved in the write pipeline. Of course, I could search NN log for the list of DNs, but it might not be possible sometimes or convenient.

      Propose to add a DEBUG trace to DataStreamer#setPipeline to print the list of DNs in the pipeline.

      BTW, we do print the list of DNs during pipeline recovery.

        Activity

        Hide
        kihwal Kihwal Lee added a comment -

        Trying to diagnose a slow HDFS flush, taking longer than 10 second...

        It might not be relevant in your case, but we've seen a lot of such problems with 2.6, which mostly disappeared after applying HDFS-8791 internally.

        In any case, adding the debug log line seems reasonable.

        Show
        kihwal Kihwal Lee added a comment - Trying to diagnose a slow HDFS flush, taking longer than 10 second... It might not be relevant in your case, but we've seen a lot of such problems with 2.6, which mostly disappeared after applying HDFS-8791 internally. In any case, adding the debug log line seems reasonable.
        Hide
        jzhuge John Zhuge added a comment -

        Thanks Kihwal Lee for bringing up HDFS-8791.

        Show
        jzhuge John Zhuge added a comment - Thanks Kihwal Lee for bringing up HDFS-8791 .
        Hide
        jzhuge John Zhuge added a comment -

        Patch 001:

        • initDataStreaming is a better place to add DEBUG msg because the log msg will have file, block, and pipeline all together.
        • No unit test because the patch adds DEBUG msg only.

        TestDataStream log that shows the new DEBUG msg:

        2016-09-01 11:54:18,470 [DataStreamer for file /file1 block BP-1484500550-172.16.1.255-1472756056162:blk_1073741825_1001] DEBUG hdfs.DataStreamer (DataStreamer.java:initDataStreaming(512)) - nodes [DatanodeInfoWithStorage[127.0.0.1:61765,DS-124a1018-6033-4f81-bc43-cba740bd9538,DISK]] storageTypes [DISK] storageIDs [DS-124a1018-6033-4f81-bc43-cba740bd9538]
        
        Show
        jzhuge John Zhuge added a comment - Patch 001: initDataStreaming is a better place to add DEBUG msg because the log msg will have file , block , and pipeline all together. No unit test because the patch adds DEBUG msg only. TestDataStream log that shows the new DEBUG msg: 2016-09-01 11:54:18,470 [DataStreamer for file /file1 block BP-1484500550-172.16.1.255-1472756056162:blk_1073741825_1001] DEBUG hdfs.DataStreamer (DataStreamer.java:initDataStreaming(512)) - nodes [DatanodeInfoWithStorage[127.0.0.1:61765,DS-124a1018-6033-4f81-bc43-cba740bd9538,DISK]] storageTypes [DISK] storageIDs [DS-124a1018-6033-4f81-bc43-cba740bd9538]
        Hide
        hadoopqa Hadoop QA added a comment -
        -1 overall



        Vote Subsystem Runtime Comment
        0 reexec 0m 24s Docker mode activated.
        +1 @author 0m 0s The patch does not contain any @author tags.
        -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
        +1 mvninstall 7m 47s trunk passed
        +1 compile 0m 32s trunk passed
        +1 checkstyle 0m 15s trunk passed
        +1 mvnsite 0m 36s trunk passed
        +1 mvneclipse 0m 12s trunk passed
        +1 findbugs 1m 32s trunk passed
        +1 javadoc 0m 21s trunk passed
        +1 mvninstall 0m 34s the patch passed
        +1 compile 0m 30s the patch passed
        +1 javac 0m 30s the patch passed
        +1 checkstyle 0m 13s the patch passed
        +1 mvnsite 0m 33s the patch passed
        +1 mvneclipse 0m 9s the patch passed
        +1 whitespace 0m 0s The patch has no whitespace issues.
        +1 findbugs 1m 37s the patch passed
        +1 javadoc 0m 19s the patch passed
        +1 unit 0m 55s hadoop-hdfs-client in the patch passed.
        +1 asflicense 0m 16s The patch does not generate ASF License warnings.
        17m 58s



        Subsystem Report/Notes
        Docker Image:yetus/hadoop:9560f25
        JIRA Issue HDFS-10822
        JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12826679/HDFS-10822.001.patch
        Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
        uname Linux 8cf9c770f2cd 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
        Build tool maven
        Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
        git revision trunk / 3069df7
        Default Java 1.8.0_101
        findbugs v3.0.0
        Test Results https://builds.apache.org/job/PreCommit-HDFS-Build/16609/testReport/
        modules C: hadoop-hdfs-project/hadoop-hdfs-client U: hadoop-hdfs-project/hadoop-hdfs-client
        Console output https://builds.apache.org/job/PreCommit-HDFS-Build/16609/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 24s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. +1 mvninstall 7m 47s trunk passed +1 compile 0m 32s trunk passed +1 checkstyle 0m 15s trunk passed +1 mvnsite 0m 36s trunk passed +1 mvneclipse 0m 12s trunk passed +1 findbugs 1m 32s trunk passed +1 javadoc 0m 21s trunk passed +1 mvninstall 0m 34s the patch passed +1 compile 0m 30s the patch passed +1 javac 0m 30s the patch passed +1 checkstyle 0m 13s the patch passed +1 mvnsite 0m 33s the patch passed +1 mvneclipse 0m 9s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 1m 37s the patch passed +1 javadoc 0m 19s the patch passed +1 unit 0m 55s hadoop-hdfs-client in the patch passed. +1 asflicense 0m 16s The patch does not generate ASF License warnings. 17m 58s Subsystem Report/Notes Docker Image:yetus/hadoop:9560f25 JIRA Issue HDFS-10822 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12826679/HDFS-10822.001.patch Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 8cf9c770f2cd 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision trunk / 3069df7 Default Java 1.8.0_101 findbugs v3.0.0 Test Results https://builds.apache.org/job/PreCommit-HDFS-Build/16609/testReport/ modules C: hadoop-hdfs-project/hadoop-hdfs-client U: hadoop-hdfs-project/hadoop-hdfs-client Console output https://builds.apache.org/job/PreCommit-HDFS-Build/16609/console Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
        Hide
        eddyxu Lei (Eddy) Xu added a comment -

        +1. Thanks for adding more debug information, John Zhuge

        This patch does not include test because it only adds debug information.

        Committed to trunk and branch-2.

        Show
        eddyxu Lei (Eddy) Xu added a comment - +1. Thanks for adding more debug information, John Zhuge This patch does not include test because it only adds debug information. Committed to trunk and branch-2.
        Hide
        jzhuge John Zhuge added a comment -

        Thanks Lei (Eddy) Xu for the review and commit.

        Show
        jzhuge John Zhuge added a comment - Thanks Lei (Eddy) Xu for the review and commit.
        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10391 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10391/)
        HDFS-10822. Log DataNodes in the write pipeline. John Zhuge via Lei Xu (lei: rev 5a8c5064d1a1d596b1f5c385299a86ec6ab9ad1e)

        • (edit) hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DataStreamer.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10391 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10391/ ) HDFS-10822 . Log DataNodes in the write pipeline. John Zhuge via Lei Xu (lei: rev 5a8c5064d1a1d596b1f5c385299a86ec6ab9ad1e) (edit) hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/DataStreamer.java

          People

          • Assignee:
            jzhuge John Zhuge
            Reporter:
            jzhuge John Zhuge
          • Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development