You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Steve Loughran (JIRA)" <ji...@apache.org> on 2017/02/27 14:19:45 UTC

[jira] [Commented] (HADOOP-14125) s3guard tool tests aren't isolated; can't run in parallel

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

Steve Loughran commented on HADOOP-14125:
-----------------------------------------

Stack showing problems. I actually think the cause of this failure is the usual intermittent consistency issue with {{ITestS3AContractRootDir}}}, but it is highlighting that more stuff is hanging off root, when it shouldn't

{code}
Running org.apache.hadoop.fs.contract.s3a.ITestS3AContractRootDir
Tests run: 9, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 41.763 sec <<< FAILURE! - in org.apache.hadoop.fs.contract.s3a.ITestS3AContractRootDir
testRecursiveRootListing(org.apache.hadoop.fs.contract.s3a.ITestS3AContractRootDir)  Time elapsed: 22.02 sec  <<< FAILURE!
java.lang.AssertionError: files mismatch: between 
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-1"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-0"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-2"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-3"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-4"
  "s3a://hwdev-steve-ireland-new/Users/stevel/Projects/hadoop-trunk/hadoop-tools/hadoop-aws/target/test-dir/7/EOdrQcsdAU/file"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target0"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target6"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target1"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target8"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target2"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target7"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target4"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target5"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target3"
  "s3a://hwdev-steve-ireland-new/fork-2/test/target9"
  "s3a://hwdev-steve-ireland-new/user/stevel/test/parentdir/child"
  "s3a://hwdev-steve-ireland-new/user/stevel/test/file"
  "s3a://hwdev-steve-ireland-new/file.txt"
] and 
  "s3a://hwdev-steve-ireland-new/Users/stevel/Projects/hadoop-trunk/hadoop-tools/hadoop-aws/target/test-dir/7/EOdrQcsdAU/file"
  "s3a://hwdev-steve-ireland-new/file.txt"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-0"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-1"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-2"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-3"
  "s3a://hwdev-steve-ireland-new/test-diff/s3_only/file-4"
  "s3a://hwdev-steve-ireland-new/user/stevel/test/file"
  "s3a://hwdev-steve-ireland-new/user/stevel/test/parentdir/child"
]
	at org.junit.Assert.fail(Assert.java:88)
	at org.junit.Assert.assertTrue(Assert.java:41)
	at org.apache.hadoop.fs.contract.ContractTestUtils$TreeScanResults.assertFieldsEquivalent(ContractTestUtils.java:1369)
	at org.apache.hadoop.fs.contract.AbstractContractRootDirectoryTest.testRecursiveRootListing(AbstractContractRootDirectoryTest.java:222)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
	at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
{code}

> s3guard tool tests aren't isolated; can't run in parallel
> ---------------------------------------------------------
>
>                 Key: HADOOP-14125
>                 URL: https://issues.apache.org/jira/browse/HADOOP-14125
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: fs/s3, test
>    Affects Versions: HADOOP-13345
>            Reporter: Steve Loughran
>
> The {{S3GuardToolTestBase}} don't parallelize and break other tests. This can surface if you do a full run with -Ds3guard and -Ddynamo.
> # many of the test paths they create are being requested with absolute paths, e.g {{"/test-diff"}}.
> # the base class doesn't  set up a per-forked-JUnit-test runner path in the bucket
> # and there's no cleanup at the end of each test case; teardown() is empty.
> Ideally, the tests should be made child classes of  {{AbstractS3ATestBase}}, with its post-run cleanup, If that can't be done, then the tests must 
> # use {{S3ATestUtils.createTestPath(super.getTestPath())} to create the base test path
> # clean up that dir in teardown if the FS instance is non-null. {{ContractTestUtils.cleanup()}} can do this.
> If it happens that the tests cannot run in parallel with others, then the build must be changed to exclude them from the parallel test run phase & include them in the serialized section.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org