-
Notifications
You must be signed in to change notification settings - Fork 9.2k
Backport Hadoop 17215 branch 2.10 #4261
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Backport Hadoop 17215 branch 2.10 #4261
Conversation
Contributed by Mukund Thakur. (cherry picked from commit 8031c66)
Contributed by Mehakmeet Singh.There (cherry picked from commit 459eb2a)
Contributed by: Mehakmeet Singh. Change-Id: Ib84e7a42f28e064df4c6204fcce33e573360bf42 (cherry picked from commit 7f486f0)
Contributed by Mehakmeet Singh. (cherry picked from commit 3472c3e)
…nse failure occurs in ABFS (apache#2264) Contributed by Mehakmeet Singh (cherry picked from commit 0d85515)
Contributed by Sneha Vijayarajan
DETAILS:
This change adds config key "fs.azure.enable.conditional.create.overwrite" with
a default of true. When enabled, if create(path, overwrite: true) is invoked
and the file exists, the ABFS driver will first obtain its etag and then attempt
to overwrite the file on the condition that the etag matches. The purpose of this
is to mitigate the non-idempotency of this method. Specifically, in the event of
a network error or similar, the client will retry and this can result in the file
being created more than once which may result in data loss. In essense this is
like a poor man's file handle, and will be addressed more thoroughly in the future
when support for lease is added to ABFS.
TEST RESULTS:
namespace.enabled=true
auth.type=SharedKey
-------------------
$mvn -T 1C -Dparallel-tests=abfs -Dscale -DtestsThreadCount=8 clean verify
Tests run: 87, Failures: 0, Errors: 0, Skipped: 0
Tests run: 457, Failures: 0, Errors: 0, Skipped: 42
Tests run: 207, Failures: 0, Errors: 0, Skipped: 24
namespace.enabled=true
auth.type=OAuth
-------------------
$mvn -T 1C -Dparallel-tests=abfs -Dscale -DtestsThreadCount=8 clean verify
Tests run: 87, Failures: 0, Errors: 0, Skipped: 0
Tests run: 457, Failures: 0, Errors: 0, Skipped: 74
Tests run: 207, Failures: 0, Errors: 0, Skipped: 140
(cherry picked from commit e31a636)
Contributed by Ayush Saxena and Steve Loughran Change-Id: I4bb76815bc1d11d1804dc67bafde68b6a995b974 (cherry picked from commit 07b7d07)
|
💔 -1 overall
This message was automatically generated. |
|
💔 -1 overall
This message was automatically generated. |
|
@steveloughran please review/merge this. Created this one PR to cherry pick seven commits as discussed in #4171 |
|
We're closing this stale PR because it has been open for 100 days with no activity. This isn't a judgement on the merit of the PR in any way. It's just a way of keeping the PR queue manageable. |
Description of PR
The reason for this cherry pick is to backport fix for https://issues.apache.org/jira/browse/HADOOP-17215 .The following commits were cherry picked in order to do it cleanly
8031c66
459eb2a
7f486f0
3472c3e
0d85515
e31a636
07b7d07
The second last commit e31a636 was the intended one and the last one was cherry picked because it fixed some test failures.
How was this patch tested?
Ran
mvn test -pl hadoop-tools/hadoop-azureRan all integration abfs tests using
mvn -T 1C -Dparallel-tests=abfs clean verifywith my storage account arjundev.dfs.core.windows.netStorage account's Primary location: East US, Secondary location: West US
For code changes:
LICENSE,LICENSE-binary,NOTICE-binaryfiles?