Hadoop HDFS
  1. Hadoop HDFS
  2. HDFS-4246

The exclude node list should be more forgiving, for each output stream

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.0.0-alpha
    • Fix Version/s: 2.1.0-beta
    • Component/s: hdfs-client
    • Labels:
      None
    • Hadoop Flags:
      Reviewed
    • Target Version/s:

      Description

      Originally observed by Inder on the mailing lists:

      Folks,

      i was wondering if there is any mechanism/logic to move a node back from the excludedNodeList to live nodes to be tried for new block creation.

      In the current DFSOutputStream code i do not see this. The use-case is if the write timeout is being reduced and certain nodes get aggressively added to the excludedNodeList and the client caches DFSOutputStream then the excludedNodes never get tried again in the lifetime of the application caching DFSOutputStream

      What this leads to, is a special scenario, that may impact smaller clusters more than larger ones:

      1. File is opened for continuous hflush/sync-based writes, such as a HBase WAL for example. This file is gonna be kept open for a very very long time, by design.
      2. Over time, nodes are excluded for various errors, such as DN crashes, network failures, etc.
      3. Eventually, exclude list == live nodes list or close, and the write suffers. At time of equality, the write also fails with an error of not being able to get a block allocation.

      We should perhaps make the excludeNodes list a timed-cache collection, so that even if it begins filling up, the older excludes are pruned away, giving those nodes a try again for later.

      One place we have to be careful about, though, is rack-failures. Those sometimes never come back fast enough, and can be problematic to retry code with such an eventually-forgiving list. Perhaps we can retain forgiven nodes and if they are entered again, we may double or triple the forgiveness value (in time units), to counter this? Its just one idea.

      1. HDFS-4246.patch
        12 kB
        Harsh J
      2. HDFS-4246.patch
        12 kB
        Harsh J
      3. HDFS-4246.patch
        12 kB
        Harsh J

        Issue Links

          Activity

          Hide
          Hudson added a comment -

          Integrated in Hadoop-Mapreduce-trunk #1380 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1380/)
          HDFS-4246. The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475)

          Result = SUCCESS
          atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475
          Files :

          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Show
          Hudson added a comment - Integrated in Hadoop-Mapreduce-trunk #1380 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1380/ ) HDFS-4246 . The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475) Result = SUCCESS atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475 Files : /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Hdfs-trunk #1352 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/1352/)
          HDFS-4246. The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475)

          Result = FAILURE
          atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475
          Files :

          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Show
          Hudson added a comment - Integrated in Hadoop-Hdfs-trunk #1352 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/1352/ ) HDFS-4246 . The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475) Result = FAILURE atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475 Files : /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Hide
          Hudson added a comment -

          Integrated in Hadoop-Yarn-trunk #163 (See https://builds.apache.org/job/Hadoop-Yarn-trunk/163/)
          HDFS-4246. The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475)

          Result = FAILURE
          atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475
          Files :

          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Show
          Hudson added a comment - Integrated in Hadoop-Yarn-trunk #163 (See https://builds.apache.org/job/Hadoop-Yarn-trunk/163/ ) HDFS-4246 . The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475) Result = FAILURE atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475 Files : /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Hide
          Aaron T. Myers added a comment -

          I've just committed this to trunk and branch-2.

          Thanks a lot for the contribution, Harsh.

          Show
          Aaron T. Myers added a comment - I've just committed this to trunk and branch-2. Thanks a lot for the contribution, Harsh.
          Hide
          Hudson added a comment -

          Integrated in Hadoop-trunk-Commit #3500 (See https://builds.apache.org/job/Hadoop-trunk-Commit/3500/)
          HDFS-4246. The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475)

          Result = SUCCESS
          atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475
          Files :

          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml
          • /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Show
          Hudson added a comment - Integrated in Hadoop-trunk-Commit #3500 (See https://builds.apache.org/job/Hadoop-trunk-Commit/3500/ ) HDFS-4246 . The exclude node list should be more forgiving, for each output stream. Contributed by Harsh J. Chouraria. (Revision 1459475) Result = SUCCESS atm : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1459475 Files : /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSClient.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSConfigKeys.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/DFSOutputStream.java /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/resources/hdfs-default.xml /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSClientExcludedNodes.java
          Hide
          Aaron T. Myers added a comment -

          +1, the latest patch looks good to me. I'm going to commit this momentarily.

          Show
          Aaron T. Myers added a comment - +1, the latest patch looks good to me. I'm going to commit this momentarily.
          Hide
          Hadoop QA added a comment -

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

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

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

          +1 tests included appear to have a timeout.

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

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

          +1 eclipse:eclipse. The patch built with eclipse:eclipse.

          +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 hadoop-hdfs-project/hadoop-hdfs.

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

          Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/4128//testReport/
          Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/4128//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/12574688/HDFS-4246.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 1 new or modified test files. +1 tests included appear to have a timeout. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 javadoc . The javadoc tool did not generate any warning messages. +1 eclipse:eclipse . The patch built with eclipse:eclipse. +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 hadoop-hdfs-project/hadoop-hdfs. +1 contrib tests . The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/4128//testReport/ Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/4128//console This message is automatically generated.
          Hide
          Aaron T. Myers added a comment -

          Yea, particularly in light of the stale DN stuff (i.e. HDFS-3703 and friends) I think it's OK to lower the forgiveness time to 10 minutes, or potentially even lower.

          The latest patch looks good to me. +1 pending Jenkins.

          Show
          Aaron T. Myers added a comment - Yea, particularly in light of the stale DN stuff (i.e. HDFS-3703 and friends) I think it's OK to lower the forgiveness time to 10 minutes, or potentially even lower. The latest patch looks good to me. +1 pending Jenkins.
          Hide
          Harsh J added a comment -

          Rolling restarts were not on mind when I wrote this patch, so I put the default has the half-time of the default HBase's HLog roll period (1 hour). I've made it 10 mins, which I think is OK cause a DataNode is also marked DEAD in a very close period as that and won't give us cases where a bad node is selected and sent again to the client and that counts up a precious retry due to failure again.

          I've addressed all other comments in this patch as well, thanks Colin and Aaron!

          Show
          Harsh J added a comment - Rolling restarts were not on mind when I wrote this patch, so I put the default has the half-time of the default HBase's HLog roll period (1 hour). I've made it 10 mins, which I think is OK cause a DataNode is also marked DEAD in a very close period as that and won't give us cases where a bad node is selected and sent again to the client and that counts up a precious retry due to failure again. I've addressed all other comments in this patch as well, thanks Colin and Aaron!
          Hide
          Aaron T. Myers added a comment -

          Patch looks pretty good to me. A few little comments:

          1. 30 minutes seems a little high to me for a default value. I could easily imagine someone wanting to perform a rolling restart of DNs in a cluster with long-lived clients, wherein the whole rolling restart process might take less than 30 minutes. In this case the client would end up not aging off any of the excluded nodes. Maybe something in the neighborhood of 5-10 minutes would make more sense? Thoughts?
          2. In the test after restarting the two DNs, recommend adding a MiniDFSCluster#waitActive to make sure that the DNs have finished restarting/registered with the NN before proceeding on with the rest of the test.
          3. Recommend using ThreadUtil#sleepAtLeastIgnoreInterrupts to do the sleep in the test to ensure the client has had time enough to remove the formerly-excluded nodes.
          4. You'll need to add a timeout for the test in order to pass test-patch.
          Show
          Aaron T. Myers added a comment - Patch looks pretty good to me. A few little comments: 30 minutes seems a little high to me for a default value. I could easily imagine someone wanting to perform a rolling restart of DNs in a cluster with long-lived clients, wherein the whole rolling restart process might take less than 30 minutes. In this case the client would end up not aging off any of the excluded nodes. Maybe something in the neighborhood of 5-10 minutes would make more sense? Thoughts? In the test after restarting the two DNs, recommend adding a MiniDFSCluster#waitActive to make sure that the DNs have finished restarting/registered with the NN before proceeding on with the rest of the test. Recommend using ThreadUtil#sleepAtLeastIgnoreInterrupts to do the sleep in the test to ensure the client has had time enough to remove the formerly-excluded nodes. You'll need to add a timeout for the test in order to pass test-patch.
          Hide
          Hadoop QA added a comment -

          -1 overall. Here are the results of testing the latest attachment
          http://issues.apache.org/jira/secure/attachment/12574514/HDFS-4246.patch
          against trunk revision .

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

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

          -1 one of tests included doesn't have a timeout.

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

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

          +1 eclipse:eclipse. The patch built with eclipse:eclipse.

          +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 hadoop-hdfs-project/hadoop-hdfs.

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

          Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/4121//testReport/
          Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/4121//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/12574514/HDFS-4246.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 1 new or modified test files. -1 one of tests included doesn't have a timeout. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 javadoc . The javadoc tool did not generate any warning messages. +1 eclipse:eclipse . The patch built with eclipse:eclipse. +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 hadoop-hdfs-project/hadoop-hdfs. +1 contrib tests . The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/4121//testReport/ Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/4121//console This message is automatically generated.
          Hide
          Harsh J added a comment -

          Updated patch addresses Colin's comments.

          Show
          Harsh J added a comment - Updated patch addresses Colin's comments.
          Hide
          Harsh J added a comment -

          Thanks Colin, I'll update the test with your comments and re-up!

          Show
          Harsh J added a comment - Thanks Colin, I'll update the test with your comments and re-up!
          Hide
          Colin Patrick McCabe added a comment -

          This change makes a lot of sense to me. It should help long-running DFSClients like HBase.

          +    // Forgive nodes in under 2s for this test case.
          +    conf.setLong(
          +        DFSConfigKeys.DFS_CLIENT_WRITE_EXCLUDE_NODES_CACHE_EXPIRY_INTERVAL,
          +        2000);
          ...
          +    try {
          +      Thread.sleep(2000);
          +    } catch (InterruptedException e) {
          +      fail("Sleep in test (to expire/forgive excluded datanodes)" +
          +           "was interrupted for some reason.");
          +    }
          

          In this test, should we set the cache expiry to something like 1s, if we're sleeping exactly 2 seconds? Otherwise we're cutting it a little bit close, perhaps? Of course, restarting the DNs will take some time, but it might be better to err on the side of safety.

          Also, you are assuming that the default checksum chunk size is 512 bytes. While this is currently true, it would be better to manually specify this in the test, so that if this changes in the future, the test behavior doesn't change.

          Show
          Colin Patrick McCabe added a comment - This change makes a lot of sense to me. It should help long-running DFSClients like HBase. + // Forgive nodes in under 2s for this test case . + conf.setLong( + DFSConfigKeys.DFS_CLIENT_WRITE_EXCLUDE_NODES_CACHE_EXPIRY_INTERVAL, + 2000); ... + try { + Thread .sleep(2000); + } catch (InterruptedException e) { + fail( "Sleep in test (to expire/forgive excluded datanodes)" + + "was interrupted for some reason." ); + } In this test, should we set the cache expiry to something like 1s, if we're sleeping exactly 2 seconds? Otherwise we're cutting it a little bit close, perhaps? Of course, restarting the DNs will take some time, but it might be better to err on the side of safety. Also, you are assuming that the default checksum chunk size is 512 bytes. While this is currently true, it would be better to manually specify this in the test, so that if this changes in the future, the test behavior doesn't change.
          Hide
          Hadoop QA added a comment -

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

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

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

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

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

          +1 eclipse:eclipse. The patch built with eclipse:eclipse.

          +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 hadoop-hdfs-project/hadoop-hdfs.

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

          Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/3586//testReport/
          Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/3586//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/12555641/HDFS-4246.patch against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 1 new or modified test files. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 javadoc . The javadoc tool did not generate any warning messages. +1 eclipse:eclipse . The patch built with eclipse:eclipse. +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 hadoop-hdfs-project/hadoop-hdfs. +1 contrib tests . The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-HDFS-Build/3586//testReport/ Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/3586//console This message is automatically generated.
          Hide
          Harsh J added a comment -

          Attached a patch that implements this. The new behavior is to expire the elements of the excluded list after a configurable (per-client instance configurable) period of time. The default is 30 minutes.

          Added test, when excluded out (i.e. without the DFSClient and DFSOutputStream changes), fails deterministically and passes deterministically with the feature addition.

          Show
          Harsh J added a comment - Attached a patch that implements this. The new behavior is to expire the elements of the excluded list after a configurable (per-client instance configurable) period of time. The default is 30 minutes. Added test, when excluded out (i.e. without the DFSClient and DFSOutputStream changes), fails deterministically and passes deterministically with the feature addition.

            People

            • Assignee:
              Harsh J
              Reporter:
              Harsh J
            • Votes:
              0 Vote for this issue
              Watchers:
              12 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development