Prevent issue report on read_object_md if the object doesn't exist #8347
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Explain the changes
This PR prevents issue report when an object doesn't exist in a target bucket. It is quite common and OK for clients to issue
HeadObject
against an object that doesn't exist in the bucket. This should not be counted as an issue with the namespace store. Counting it as an issue leads to it being marked asREJECTED
in k8s.This situation gets even stranger when we account for the fact that our
namespace_monitor
does take into account such scenarios which leads to NamespaceStore continuously switching betweenOPTIMAL
andREJECTED
.And it gets worse when NooBaa internal replication engine is the entity issuing
HeadObject
. In such scenarios it isn't clear what is causing the NS to get intoREJECTED
state at all as the customer might not be even touching the bucket by themselves.Issues: Fixed #xxx / Gap #xxx
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=2277298