Skip to content
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

[SnapshotV2] Support centralize snapshot creation #15124

Merged
merged 35 commits into from
Aug 28, 2024

Conversation

anshu1106
Copy link
Contributor

@anshu1106 anshu1106 commented Aug 6, 2024

Description

This PR centralizes snapshot create operations and integrate with timestamp pinning for snapshot creation. The snapshot creation has a sync execution and it can be scaled independently of number of shards in the cluster.
More details can be found in the RFC

Related Issues

Resolves #15123

Check List

  • Functionality includes testing.
  • API changes companion pull request created, if applicable.
  • Public documentation issue/PR created, if applicable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@github-actions github-actions bot added enhancement Enhancement or improvement to existing feature or request Storage:Snapshots labels Aug 6, 2024
Copy link
Contributor

github-actions bot commented Aug 6, 2024

❌ Gradle check result for 9142a25: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Signed-off-by: Anshu Agarwal <[email protected]>
Copy link
Contributor

github-actions bot commented Aug 6, 2024

❌ Gradle check result for d9bbc65: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Anshu Agarwal added 2 commits August 6, 2024 16:53
Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Copy link
Contributor

github-actions bot commented Aug 6, 2024

❌ Gradle check result for 8e85231: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

@Bukhtawar Bukhtawar changed the title [Shallow SnapshotV2] Support centralize snapshot creation [SnapshotV2] Support centralize snapshot creation Aug 6, 2024
Copy link
Contributor

github-actions bot commented Aug 7, 2024

❌ Gradle check result for 8a507ad: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Signed-off-by: Anshu Agarwal <[email protected]>
Copy link
Contributor

github-actions bot commented Aug 7, 2024

❌ Gradle check result for 2d404e8: FAILURE

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Signed-off-by: Anshu Agarwal <[email protected]>
Copy link
Contributor

github-actions bot commented Aug 8, 2024

❌ Gradle check result for 90c860c: TIMEOUT

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Signed-off-by: Anshu Agarwal <[email protected]>
Copy link
Contributor

❌ Gradle check result for 193da65: TIMEOUT

Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

Signed-off-by: Anshu Agarwal <[email protected]>
@anshu1106 anshu1106 marked this pull request as ready for review August 14, 2024 11:36
anshu1106 added a commit to anshu1106/OpenSearch that referenced this pull request Sep 2, 2024
…#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
(cherry picked from commit 23cba28)
Signed-off-by: Anshu Agarwal <[email protected]>
ashking94 pushed a commit that referenced this pull request Sep 3, 2024
* [SnapshotV2] Support centralize snapshot creation (#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
(cherry picked from commit 23cba28)
Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless check failure

Signed-off-by: Anshu Agarwal <[email protected]>

* fix :server:japicmp failure

Signed-off-by: Anshu Agarwal <[email protected]>

* backort PR#15602

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
akolarkunnu pushed a commit to akolarkunnu/OpenSearch that referenced this pull request Sep 10, 2024
…#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
dk2k pushed a commit to dk2k/OpenSearch that referenced this pull request Oct 16, 2024
…#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
dk2k pushed a commit to dk2k/OpenSearch that referenced this pull request Oct 17, 2024
…#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
dk2k pushed a commit to dk2k/OpenSearch that referenced this pull request Oct 21, 2024
…#15124)

* Initial Commit to support centralize snapshot creation and implicit locking mechanism

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix deserilization error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix gradle spotless check

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix listener

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix test

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix snapshot generation

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify cluster setting name

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Uncomment pin timestamp code

Signed-off-by: Anshu Agarwal <[email protected]>

* Modify log messages

Signed-off-by: Anshu Agarwal <[email protected]>

* Add spotless check failure fix

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix completion listener for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Elevate cluster state update priority for repository metadata update task

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* Add priority as IMMEDIATE for cluster state repo update task only for v2 snapshots

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix build error

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless error

Signed-off-by: Anshu Agarwal <[email protected]>

* Add repository setting for snapshot v2

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add integ test to verify snapshot creation if shallow copy repo setting is disabled

Signed-off-by: Anshu Agarwal <[email protected]>

* Fix spotless vilation error

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comment

Signed-off-by: Anshu Agarwal <[email protected]>

* Address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* Add min version check for backward compatibility

Signed-off-by: Anshu Agarwal <[email protected]>

* address review comments

Signed-off-by: Anshu Agarwal <[email protected]>

* add integ test for master failover scenario

Signed-off-by: Anshu Agarwal <[email protected]>

* Add more integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

* refactor code

Signed-off-by: Anshu Agarwal <[email protected]>

* add changelog

Signed-off-by: Anshu Agarwal <[email protected]>

* Add pinned timestamp setting in integ tests

Signed-off-by: Anshu Agarwal <[email protected]>

---------

Signed-off-by: Anshu Agarwal <[email protected]>
Signed-off-by: Anshu Agarwal <[email protected]>
Co-authored-by: Anshu Agarwal <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x Backport to 2.x branch backport-failed enhancement Enhancement or improvement to existing feature or request Storage:Snapshots
Projects
Status: ✅ Done
Development

Successfully merging this pull request may close these issues.

[Snapshot-V2] Centralize snapshot creation and integrate with timestamp pinning
5 participants