Skip to content

Fix getSnapshotIndexMetaData Exception Behavior #47488

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

Merged
merged 1 commit into from
Oct 3, 2019

Conversation

original-brownbear
Copy link
Contributor

@original-brownbear original-brownbear commented Oct 3, 2019

If we fail to read the global metadata in a snapshot
we would throw SnapshotMissingException but wouldn't
do so for the index metadata.
This is breaking SLM tests at a low rate because they
use SnapshotMissingException thrown from snapshot status APIs
to wait for a snapshot being gone and if a concurrent (to the status API call)
delete hits that could lead to reading the snapshot from the RepositoryData
but then when trying to get the index metadata failing.
Also, we should be consistent here in general and not leak the
NoSuchFileException to the transport layer for index meta.

Closes #46508

If we fail to read the global metadata in a snapshot
we would throw `SnapshotMissingException` but wouldn't
do so for the index metadata.
This is breaking SLM tests at a low rate because they
use `SnapshotMissingException` thrown from snapshot status APIs
to wait for a snapshot being gone.
Also, we should be consistent here in general and not leak the
`NoSuchFileException` to the transport layer for index meta.

Closes elastic#46508
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-distributed (:Distributed/Snapshot/Restore)

Copy link
Contributor

@ywelsch ywelsch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@original-brownbear
Copy link
Contributor Author

Thanks @ywelsch & @tlrx :)

@original-brownbear original-brownbear merged commit c74ca28 into elastic:master Oct 3, 2019
@original-brownbear original-brownbear deleted the fix-slm-test branch October 3, 2019 09:00
original-brownbear added a commit to original-brownbear/elasticsearch that referenced this pull request Oct 3, 2019
If we fail to read the global metadata in a snapshot
we would throw `SnapshotMissingException` but wouldn't
do so for the index metadata.
This is breaking SLM tests at a low rate because they
use `SnapshotMissingException` thrown from snapshot status APIs
to wait for a snapshot being gone.
Also, we should be consistent here in general and not leak the
`NoSuchFileException` to the transport layer for index meta.

Closes elastic#46508
original-brownbear added a commit that referenced this pull request Oct 3, 2019
If we fail to read the global metadata in a snapshot
we would throw `SnapshotMissingException` but wouldn't
do so for the index metadata.
This is breaking SLM tests at a low rate because they
use `SnapshotMissingException` thrown from snapshot status APIs
to wait for a snapshot being gone.
Also, we should be consistent here in general and not leak the
`NoSuchFileException` to the transport layer for index meta.

Closes #46508
@original-brownbear original-brownbear restored the fix-slm-test branch August 6, 2020 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[CI] SLMSnapshotBlockingIntegTests.testRetentionWhileSnapshotInProgress failure on master
5 participants