Skip to content

HADOOP-17215: Support for conditional overwrite.#4

Open
arjun4084346 wants to merge 10 commits intobranch-2.10from
HADOOP-17215_branch-2.10
Open

HADOOP-17215: Support for conditional overwrite.#4
arjun4084346 wants to merge 10 commits intobranch-2.10from
HADOOP-17215_branch-2.10

Conversation

@arjun4084346
Copy link
Owner

@arjun4084346 arjun4084346 commented Apr 16, 2022

Description of PR

It is almost a clean cherry pick of commit e31a636
The reason for this cherry pick is to backport fix for https://issues.apache.org/jira/browse/HADOOP-17215 (apache#2246)
I need to modify TestAbfsClient.java a bit to avoid cherry picking another commit.

How was this patch tested?

Ran mvn test -pl hadoop-tools/hadoop-azure

Ran all integration abfs tests using mvn -T 1C -Dparallel-tests=abfs clean verify with my storage account arjundev.dfs.core.windows.net
Storage account's Primary location: East US, Secondary location: West US

No new unit tests fail. No tests failed. There are some errors; these were negative test cases where error was expected.

For code changes:

  • Does the title or this PR starts with the corresponding JIRA issue id (e.g. 'HADOOP-17799. Your PR title ...')?
  • Object storage: have the integration tests been executed and the endpoint declared according to the connector-specific documentation?
  • If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
  • If applicable, have you updated the LICENSE, LICENSE-binary, NOTICE-binary files?

@arjun4084346 arjun4084346 force-pushed the HADOOP-17215_branch-2.10 branch from dcd6627 to a9cf955 Compare April 16, 2022 08:04
@arjun4084346 arjun4084346 changed the base branch from HADOOP-17065_branch-2.10 to HADOOP-17229_branch-2.10 April 30, 2022 18:26
mehakmeet and others added 3 commits April 30, 2022 11:30
…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)
@arjun4084346 arjun4084346 force-pushed the HADOOP-17215_branch-2.10 branch from a9cf955 to ba8e37d Compare April 30, 2022 18:30
@arjun4084346 arjun4084346 changed the base branch from HADOOP-17229_branch-2.10 to branch-2.10 May 3, 2022 16:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

Comments