[ 
https://issues.apache.org/jira/browse/HDFS-15147?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17026411#comment-17026411
 ] 

Ahmed Hussein commented on HDFS-15147:
--------------------------------------

Changes made:
* change the implementation of {{triggerBlockReport}}.
* use {{GenericTestUtils.waitFor}}
* change waiting period of {{waitForMetrics}}.
* change poll period in the test units.

*Execution time before the changes:*

{code:bash}
  [INFO] -------------------------------------------------------
  [INFO]  T E S T S
  [INFO] -------------------------------------------------------
  [INFO] Time elapsed: 19.074 s - in TestLazyPersistLockedMemory
  [INFO] Time elapsed: 0.447 s - in TestScrLazyPersistFiles
  [INFO] Time elapsed: 110.539 s - TestLazyPersistFiles
  [INFO] Time elapsed: 13.139 s - in TestLazyPersistPolicy
  [INFO] Time elapsed: 27.137 s - in TestLazyPersistReplicaPlacement
  [INFO] Time elapsed: 103.238 s - in TestLazyWriter
  [INFO] Time elapsed: 16.887 s - in TestLazyPersistReplicaRecovery
  [INFO] Time elapsed: 6.768 s - in TestJMXGet
{code}

*Execution time after the changes:* TestLazyPersistFiles is 50%; 
TestLazyPersistReplicaPlacement is 55%.

{code:bash}
  [INFO] -------------------------------------------------------
  [INFO]  T E S T S
  [INFO] -------------------------------------------------------
  [INFO] Time elapsed: 17.264 s - in TestLazyPersistLockedMemory
  [INFO] Time elapsed: 0.464 s - in TestScrLazyPersistFiles
  [INFO] Time elapsed: 54.142 s - in TestLazyPersistFiles
  [INFO] Time elapsed: 13.308 s - in TestLazyPersistPolicy
  [INFO] Time elapsed: 15.849 s - in TestLazyPersistReplicaPlacement
  [INFO] Time elapsed: 20.35 s - in TestLazyWriter
  [INFO] Time elapsed: 16.858 s - in TestLazyPersistReplicaRecovery
  [INFO] Time elapsed: 6.91 s - in TestJMXGet
{code}


> LazyPersistTestCase wait logic is error pruned
> ----------------------------------------------
>
>                 Key: HDFS-15147
>                 URL: https://issues.apache.org/jira/browse/HDFS-15147
>             Project: Hadoop HDFS
>          Issue Type: Bug
>            Reporter: Ahmed Hussein
>            Assignee: Ahmed Hussein
>            Priority: Minor
>
> {{LazyPersistTestCase}} has some issues hat lead to inconsistent result of 
> the test cases:
> * the wait periods to change of status is too long. It reaches 10 secs in 
> some cases.
> * triggerBlockReport() only triggers FBR of DN with index 0. This is counter 
> intuitive because the JUnit tests restart the DN assuming that the restarted 
> DN will send a FBR. However, this never happens because the DN will get a new 
> index post restart.
> {code:java}
>   protected final void triggerBlockReport()
>       throws IOException, InterruptedException {
>     // Trigger block report to NN
>     DataNodeTestUtils.triggerBlockReport(cluster.getDataNodes().get(0));
>     Thread.sleep(10 * 1000);
>   }
> {code}
> [~inigoiri] suggested that we propagate the findings and fixes from 
> HDFS-13179 and HDFS-15144 into {{LazyPersistTestCase.java}}. This will 
> eventually reduce the runtime and make the test cases more stable.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to