Skip to content

HADOOP-16357 TeraSort Job failing on S3 DirectoryStagingCommitter: destination path exists - #992

Closed
steveloughran wants to merge 7 commits into
apache:trunkfrom
steveloughran:s3/HADOOP-16357-commit-append
Closed

HADOOP-16357 TeraSort Job failing on S3 DirectoryStagingCommitter: destination path exists#992
steveloughran wants to merge 7 commits into
apache:trunkfrom
steveloughran:s3/HADOOP-16357-commit-append

Conversation

@steveloughran

Copy link
Copy Markdown
Contributor

This patch

  • changes the default for the staging committer to append, as we get for the classic FOF committer
  • adds a check for the dest path being a file not a dir
  • adds tests for this
  • Changes AbstractCommitTerasortIT. to not use the simple parser, so fails if the file is present.

Testing: S3A Ireland w/ S3Guard. the Staging test failed, which makes me think that the settings weren't getting through

@steveloughran
steveloughranforce-pushed the s3/HADOOP-16357-commit-append branch from 55d0ee9 to af06a4aCompareJune 19, 2019 22:31
@steveloughran

Copy link
Copy Markdown
ContributorAuthor

Test results (rebased patch): MR tests fail, but not ITestDirectoryCommitProtocol, which is complaining that the dest dir exists in job setup

org.apache.hadoop.fs.PathExistsException: `s3a://hwdev-steve-ireland-new/test/DELAY_LISTING_ME/ITestDirectoryCommitProtocol-testRecoveryAndCleanup': Setting job as Task committer attempt_200707120058_0001_m_000000_0: Destination path exists and committer conflict resolution mode is "fail"
at org.apache.hadoop.fs.s3a.commit.staging.StagingCommitter.failDestinationExists(StagingCommitter.java:878)
at org.apache.hadoop.fs.s3a.commit.staging.DirectoryStagingCommitter.setupJob(DirectoryStagingCommitter.java:85)
at org.apache.hadoop.fs.s3a.commit.AbstractITCommitProtocol.testRecoveryAndCleanup(AbstractITCommitProtocol.java:587)
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:50)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
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$CallableStatement.call(FailOnTimeout.java:298)
at org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:292)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.lang.Thread.run(Thread.java:745)

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

ITestDirectoryCommitProtocol now working. unsetting per-bucket options made this go away, though I couldn't find out exactly where it was being set (core-site -> auth-keys.xml -> out of hadoop source tree XML)

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec23Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 5 new or modified test files.
_ trunk Compile Tests _
0mvndep74Maven dependency ordering for branch
+1mvninstall1337trunk passed
+1compile1178trunk passed
+1checkstyle158trunk passed
+1mvnsite138trunk passed
+1shadedclient1101branch has no errors when building and testing our client artifacts.
+1javadoc95trunk passed
0spotbugs67Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs195trunk passed
_ Patch Compile Tests _
0mvndep22Maven dependency ordering for patch
+1mvninstall79the patch passed
+1compile1191the patch passed
+1javac1191the patch passed
-0checkstyle150root: The patch generated 5 new + 14 unchanged - 0 fixed = 19 total (was 14)
+1mvnsite121the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml2The patch has no ill-formed XML file.
+1shadedclient726patch has no errors when building and testing our client artifacts.
+1javadoc94the patch passed
+1findbugs204the patch passed
_ Other Tests _
+1unit536hadoop-common in the patch passed.
-1unit283hadoop-aws in the patch failed.
+1asflicense47The patch does not generate ASF License warnings.
7728
ReasonTests
Failed junit testshadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/1/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 6e2b3815149e 4.4.0-143-generic #169~14.04.2-Ubuntu SMP Wed Feb 13 15:00:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 71ecd2e
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/1/artifact/out/diff-checkstyle-root.txt
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/1/artifact/out/patch-unit-hadoop-tools_hadoop-aws.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/1/testReport/
Max. process+thread count1322 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/1/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec598Docker mode activated.
_ Prechecks _
+1dupname1No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 5 new or modified test files.
_ trunk Compile Tests _
0mvndep69Maven dependency ordering for branch
+1mvninstall1050trunk passed
+1compile1053trunk passed
+1checkstyle142trunk passed
+1mvnsite131trunk passed
+1shadedclient1014branch has no errors when building and testing our client artifacts.
+1javadoc106trunk passed
0spotbugs68Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs184trunk passed
_ Patch Compile Tests _
0mvndep24Maven dependency ordering for patch
+1mvninstall80the patch passed
+1compile999the patch passed
+1javac999the patch passed
-0checkstyle185root: The patch generated 5 new + 14 unchanged - 0 fixed = 19 total (was 14)
+1mvnsite132the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml2The patch has no ill-formed XML file.
+1shadedclient687patch has no errors when building and testing our client artifacts.
+1javadoc106the patch passed
+1findbugs207the patch passed
_ Other Tests _
+1unit531hadoop-common in the patch passed.
-1unit293hadoop-aws in the patch failed.
+1asflicense53The patch does not generate ASF License warnings.
7667
ReasonTests
Failed junit testshadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/2/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux b11b4b62f323 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 71ecd2e
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/2/artifact/out/diff-checkstyle-root.txt
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/2/artifact/out/patch-unit-hadoop-tools_hadoop-aws.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/2/testReport/
Max. process+thread count1376 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/2/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec42Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 7 new or modified test files.
_ trunk Compile Tests _
0mvndep52Maven dependency ordering for branch
+1mvninstall1236trunk passed
+1compile1024trunk passed
+1checkstyle186trunk passed
+1mvnsite130trunk passed
+1shadedclient1103branch has no errors when building and testing our client artifacts.
+1javadoc96trunk passed
0spotbugs64Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs185trunk passed
_ Patch Compile Tests _
0mvndep21Maven dependency ordering for patch
+1mvninstall76the patch passed
+1compile986the patch passed
+1javac986the patch passed
-0checkstyle148root: The patch generated 6 new + 14 unchanged - 0 fixed = 20 total (was 14)
+1mvnsite122the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml1The patch has no ill-formed XML file.
+1shadedclient849patch has no errors when building and testing our client artifacts.
+1javadoc94the patch passed
+1findbugs204the patch passed
_ Other Tests _
+1unit522hadoop-common in the patch passed.
-1unit292hadoop-aws in the patch failed.
+1asflicense46The patch does not generate ASF License warnings.
7376
ReasonTests
Failed junit testshadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/3/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux d8193d94ac33 4.4.0-141-generic #167~14.04.1-Ubuntu SMP Mon Dec 10 13:20:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 5bfdf62
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/3/artifact/out/diff-checkstyle-root.txt
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/3/artifact/out/patch-unit-hadoop-tools_hadoop-aws.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/3/testReport/
Max. process+thread count1504 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/3/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec40Docker mode activated.
_ Prechecks _
+1dupname1No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 7 new or modified test files.
_ trunk Compile Tests _
0mvndep21Maven dependency ordering for branch
+1mvninstall1131trunk passed
+1compile1069trunk passed
+1checkstyle146trunk passed
+1mvnsite123trunk passed
+1shadedclient1064branch has no errors when building and testing our client artifacts.
+1javadoc93trunk passed
0spotbugs67Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs196trunk passed
_ Patch Compile Tests _
0mvndep25Maven dependency ordering for patch
+1mvninstall79the patch passed
+1compile1026the patch passed
+1javac1026the patch passed
-0checkstyle151root: The patch generated 1 new + 14 unchanged - 0 fixed = 15 total (was 14)
+1mvnsite121the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml1The patch has no ill-formed XML file.
+1shadedclient743patch has no errors when building and testing our client artifacts.
+1javadoc119the patch passed
+1findbugs259the patch passed
_ Other Tests _
+1unit631hadoop-common in the patch passed.
-1unit321hadoop-aws in the patch failed.
+1asflicense60The patch does not generate ASF License warnings.
7436
ReasonTests
Failed junit testshadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/4/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 70ad53e83e67 4.4.0-141-generic #167~14.04.1-Ubuntu SMP Mon Dec 10 13:20:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 5bfdf62
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/4/artifact/out/diff-checkstyle-root.txt
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/4/artifact/out/patch-unit-hadoop-tools_hadoop-aws.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/4/testReport/
Max. process+thread count1490 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/4/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

checkstyle is confused. This is an enum. There are no values. If I added a default I'd just get told off "all options are already covered"

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

reviewing my own patch (and looking @ failure reports of unrelated runs), I plan to change the probes for _SUCCESS of the previous stage to be different: fail with a message "previous stage did not generate output"; always work out and report which stage in the list has the first missing entry, therefore is the first failure to worry about

@steveloughran

Copy link
Copy Markdown
ContributorAuthor
  • also got a failure in the first test case where the source dir still existed. Need to Make sure it is deleted in setup

@steveloughran

Copy link
Copy Markdown
ContributorAuthor
[ERROR] test_110_teragen(org.apache.hadoop.fs.s3a.commit.terasort.ITestTerasortMagicCommitter) Time elapsed: 0.981 s <<< ERROR!org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory s3a://hwdev-steve-ireland-new/terasort-ITestTerasortMagicCommitter/sortin already exists
at org.apache.hadoop.examples.terasort.TeraOutputFormat.checkOutputSpecs(TeraOutputFormat.java:130)
at org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs(JobSubmitter.java:277)
at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:143)
at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1576)
at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1573)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1730)
at org.apache.hadoop.mapreduce.Job.submit(Job.java:1573)
at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1594)
at org.apache.hadoop.examples.terasort.TeraGen.run(TeraGen.java:304)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76)
at org.apache.hadoop.fs.s3a.commit.terasort.AbstractCommitTerasortIT.executeStage(AbstractCommitTerasortIT.java:139)
at org.apache.hadoop.fs.s3a.commit.terasort.AbstractCommitTerasortIT.test_110_teragen(AbstractCommitTerasortIT.java:167)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
``

@bgaborg

Copy link
Copy Markdown

Thanks for working on this @steveloughran; this will stabilize the integration tests.
When running the tests I get the following error:

[ERROR] Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 14.781 s <<< FAILURE! - in org.apache.hadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit
[ERROR] testDefault(org.apache.hadoop.fs.s3a.commit.staging.TestStagingPartitionedTaskCommit) Time elapsed: 0.22 s <<< FAILURE!
java.lang.AssertionError: Conflict resolution mode in PartitionedStagingCommitter{StagingCommitter{AbstractS3ACommitter{role=Task committer attempt_job_0001_r_000002_3, name=partitioned, outputPath=s3a://bucket-name/output/path, workPath=file:/var/folders/n_/cnl5_2s56511p7f5842_p8yc0000gp/T/buffer/736a1d32-6626-45bf-ab48-ad50650e9459/_temporary/0/_temporary/attempt_job_0001_r_000002_3}, conflictResolution=APPEND, wrappedCommitter=FileOutputCommitter{PathOutputCommitter{context=TaskAttemptContextImpl{JobContextImpl{jobId=job_job_0001}; taskId=attempt_job_0001_r_000002_3, status=''}; org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter@31d48fe3}; outputPath=file:/var/folders/n_/cnl5_2s56511p7f5842_p8yc0000gp/T/cluster/gaborbota/736a1d32-6626-45bf-ab48-ad50650e9459/staging-uploads, workPath=null, algorithmVersion=1, skipCleanup=false, ignoreCleanupFailures=false}}} expected:<FAIL> but was:<APPEND>

Maybe I do something wrong, forgot to set something?

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

@bgaborg yes, seeing that too.

@steveloughran
steveloughranforce-pushed the s3/HADOOP-16357-commit-append branch 2 times, most recently from 63c1c24 to e27aa70CompareJune 24, 2019 21:56
@steveloughran

Copy link
Copy Markdown
ContributorAuthor

Gabor, fixed that; also rebased to trunk.

  • I have not done a full itest on this yet*

@hadoop-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
0reexec91Docker mode activated.
_ Prechecks _
+1dupname1No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 9 new or modified test files.
_ trunk Compile Tests _
0mvndep27Maven dependency ordering for branch
+1mvninstall1294trunk passed
+1compile964trunk passed
+1checkstyle143trunk passed
+1mvnsite123trunk passed
+1shadedclient1016branch has no errors when building and testing our client artifacts.
+1javadoc94trunk passed
0spotbugs65Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs180trunk passed
_ Patch Compile Tests _
0mvndep20Maven dependency ordering for patch
+1mvninstall77the patch passed
+1compile924the patch passed
+1javac924the patch passed
-0checkstyle146root: The patch generated 2 new + 15 unchanged - 0 fixed = 17 total (was 15)
+1mvnsite118the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml1The patch has no ill-formed XML file.
+1shadedclient706patch has no errors when building and testing our client artifacts.
+1javadoc92the patch passed
+1findbugs196the patch passed
_ Other Tests _
+1unit535hadoop-common in the patch passed.
+1unit289hadoop-aws in the patch passed.
+1asflicense43The patch does not generate ASF License warnings.
7088
SubsystemReport/Notes
DockerClient=18.09.5 Server=18.09.5 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/7/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 93bda9c4257e 4.15.0-48-generic #51-Ubuntu SMP Wed Apr 3 08:28:49 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 129576f
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/7/artifact/out/diff-checkstyle-root.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/7/testReport/
Max. process+thread count1347 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/7/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@steveloughransteveloughran changed the title HADOOP-16537 TeraSort Job failing on S3 DirectoryStagingCommitter: destination path existsHADOOP-16357 TeraSort Job failing on S3 DirectoryStagingCommitter: destination path existsJun 25, 2019
@steveloughran

Copy link
Copy Markdown
ContributorAuthor

Tested: S3A ireland

All good except the root dir tests, which Gabor and I are worrying about on the basis that it may be a sign of a regression

@hadoop-yetus

Copy link
Copy Markdown

💔 -1 overall

VoteSubsystemRuntimeComment
0reexec35Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 9 new or modified test files.
_ trunk Compile Tests _
0mvndep66Maven dependency ordering for branch
+1mvninstall1085trunk passed
+1compile1046trunk passed
+1checkstyle135trunk passed
+1mvnsite130trunk passed
+1shadedclient992branch has no errors when building and testing our client artifacts.
+1javadoc92trunk passed
0spotbugs71Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs189trunk passed
_ Patch Compile Tests _
0mvndep20Maven dependency ordering for patch
+1mvninstall79the patch passed
+1compile997the patch passed
+1javac997the patch passed
-0checkstyle142root: The patch generated 2 new + 15 unchanged - 0 fixed = 17 total (was 15)
+1mvnsite126the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml1The patch has no ill-formed XML file.
+1shadedclient669patch has no errors when building and testing our client artifacts.
+1javadoc104the patch passed
+1findbugs200the patch passed
_ Other Tests _
-1unit519hadoop-common in the patch failed.
+1unit295hadoop-aws in the patch passed.
+1asflicense51The patch does not generate ASF License warnings.
6995
ReasonTests
Failed junit testshadoop.util.TestReadWriteDiskValidator
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/8/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 4a6eada0bd8c 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 48d7f00
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/8/artifact/out/diff-checkstyle-root.txt
unithttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/8/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/8/testReport/
Max. process+thread count1427 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/8/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

This changes the default conflict resolution mode (in code, core-default and docs) to append, to be consistent with FileOutputCommitter. Also checks for all conflict modes that the destination doesn't exist; if not calls mkdirs. If it does exist, verify that it is a directory.
Committer test doesn't set partition policy or conflict mode, so verifies the defaults work (the test was changed before the source tests, to verify this was true)
Most the change is actually to the mocking tests, because of the switch from FS.exists(path) to getFileStatus() + mkdirs. this is why I hate mocking so much
Change-Id: I6fe9a12eea702cf75b35b8c7fb0db3f185d3f40b
…citly go back to append; new defaults aren't being picked up
Change-Id: I7837cd100c77eeaafafbb422074b0944282fde82
… clearing bucket options.
Somehow locally the commit confict mode fs.s3a.committer.staging.conflict-mode was retaining as fail, even with the core-default.xml set. Extra tests to log the origin of the option on an assert failure implied somehow this was coming via test/resources/core-site.xml and any transitive XMLIncludes from there.
resetting the per-bucket options was enough to make this "go away"; the test is retained in case someone else's setting is similar.
Change-Id: I3a882919a78438b22fa90e9bceb516a4de640082
Note: if the core-site actually sets it for all buckets, rather than per-bucket, then the new test will fail. Why not clear it? Because we want to verify that the default is now append.
Change-Id: I8da28bce5c5715501fb539e5bafdc247a9c81b62
fix up a test failure
Change-Id: I3af7235173b4e35ac51ba1258c4693ad4064b2b0
+ log the terasort CSV file to $TMP rather than the remote FS, where it was being deleted in teardown
Change-Id: I5e2e68f7e3d356d8f3dbde784a5fb0796cc888e6
Change-Id: I6224eb5b11de937e6f21d834e5a28a101f1eef89
@steveloughran
steveloughranforce-pushed the s3/HADOOP-16357-commit-append branch from e4afee1 to 899c36bCompareJuly 1, 2019 12:55
@steveloughran

Copy link
Copy Markdown
ContributorAuthor

rebase to trunk and push up again to kick off a retest

@hadoop-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
0reexec89Docker mode activated.
_ Prechecks _
+1dupname1No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 9 new or modified test files.
_ trunk Compile Tests _
0mvndep69Maven dependency ordering for branch
+1mvninstall1213trunk passed
+1compile1066trunk passed
+1checkstyle152trunk passed
+1mvnsite134trunk passed
+1shadedclient1111branch has no errors when building and testing our client artifacts.
+1javadoc105trunk passed
0spotbugs73Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs208trunk passed
_ Patch Compile Tests _
0mvndep23Maven dependency ordering for patch
+1mvninstall83the patch passed
+1compile993the patch passed
+1javac993the patch passed
-0checkstyle151root: The patch generated 1 new + 15 unchanged - 0 fixed = 16 total (was 15)
+1mvnsite126the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml2The patch has no ill-formed XML file.
+1shadedclient745patch has no errors when building and testing our client artifacts.
+1javadoc97the patch passed
+1findbugs206the patch passed
_ Other Tests _
+1unit559hadoop-common in the patch passed.
+1unit284hadoop-aws in the patch passed.
+1asflicense46The patch does not generate ASF License warnings.
7463
SubsystemReport/Notes
DockerClient=18.09.5 Server=18.09.5 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/9/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 559b90f4a4a0 4.15.0-52-generic #56-Ubuntu SMP Tue Jun 4 22:49:08 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 1e727cf
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/9/artifact/out/diff-checkstyle-root.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/9/testReport/
Max. process+thread count1633 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/9/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
0reexec31Docker mode activated.
_ Prechecks _
+1dupname0No case conflicting files found.
+1@author0The patch does not contain any @author tags.
+1test4tests0The patch appears to include 9 new or modified test files.
_ trunk Compile Tests _
0mvndep62Maven dependency ordering for branch
+1mvninstall1079trunk passed
+1compile1068trunk passed
+1checkstyle140trunk passed
+1mvnsite111trunk passed
+1shadedclient918branch has no errors when building and testing our client artifacts.
+1javadoc86trunk passed
0spotbugs61Used deprecated FindBugs config; considering switching to SpotBugs.
+1findbugs169trunk passed
_ Patch Compile Tests _
0mvndep21Maven dependency ordering for patch
+1mvninstall74the patch passed
+1compile996the patch passed
+1javac996the patch passed
-0checkstyle138root: The patch generated 1 new + 15 unchanged - 0 fixed = 16 total (was 15)
+1mvnsite115the patch passed
+1whitespace0The patch has no whitespace issues.
+1xml1The patch has no ill-formed XML file.
+1shadedclient636patch has no errors when building and testing our client artifacts.
+1javadoc108the patch passed
+1findbugs206the patch passed
_ Other Tests _
+1unit538hadoop-common in the patch passed.
+1unit297hadoop-aws in the patch passed.
+1asflicense53The patch does not generate ASF License warnings.
6888
SubsystemReport/Notes
DockerClient=17.05.0-ce Server=17.05.0-ce base: https://builds.apache.org/job/hadoop-multibranch/job/PR-992/10/artifact/out/Dockerfile
GITHUB PR#992
Optional Testsdupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient xml findbugs checkstyle
unameLinux 0e01d3bec442 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/hadoop.sh
git revisiontrunk / 1e727cf
Default Java1.8.0_212
checkstylehttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/10/artifact/out/diff-checkstyle-root.txt
Test Resultshttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/10/testReport/
Max. process+thread count1361 (vs. ulimit of 5500)
modulesC: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .
Console outputhttps://builds.apache.org/job/hadoop-multibranch/job/PR-992/10/console
versionsgit=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered byApache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

checkstyle is mistaken; this patch is ready to go in.

@mackrorysd

Copy link
Copy Markdown
Contributor

I'm gonna give a +0.5 for now. I reviewed the code and it looks good to me, but I don't think I fully understand the practical consequences of changing the default resolution mode just yet.

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

we're changing the default mode to == that of FileOutputCommitter, namely "it's ok if the dest exists"

Spark will refuse to execute if the dest exists, so to you use any of the conflict options you actually need to permit overwrite -so you won't change behaviour without noticing

What this does do is make the committer more consistent with the existing one

@steveloughransteveloughran added the fs/s3 changes related to hadoop-aws; submitter must declare test endpoint label Jul 10, 2019
@mackrorysd

Copy link
Copy Markdown
Contributor

Ok, sounds reasonable enough. +1 from me.

@steveloughran

Copy link
Copy Markdown
ContributorAuthor

thanks, committed to trunk.

@steveloughran
steveloughran deleted the s3/HADOOP-16357-commit-append branch July 30, 2019 15:12
shanthoosh pushed a commit to shanthoosh/hadoop that referenced this pull request Oct 15, 2019
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

fs/s3changes related to hadoop-aws; submitter must declare test endpoint

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@steveloughran@hadoop-yetus@bgaborg@mackrorysd