Skip to content

Comments

rgw: report failed replication status caused by user errors#62147

Closed
clwluvw wants to merge 19 commits intoceph:mainfrom
clwluvw:replication-status-fail
Closed

rgw: report failed replication status caused by user errors#62147
clwluvw wants to merge 19 commits intoceph:mainfrom
clwluvw:replication-status-fail

Conversation

@clwluvw
Copy link
Member

@clwluvw clwluvw commented Mar 5, 2025

clwluvw added 11 commits March 5, 2025 20:56
This will call set_send_data_hint() to give curl hint for data upload.

Signed-off-by: Seena Fallah <[email protected]>
Send Content-Length header when send_content_length is set to true.

Signed-off-by: Seena Fallah <[email protected]>
Allow implementations control the logging.

Signed-off-by: Seena Fallah <[email protected]>
This API allows system users to patch object attributes via an
S3-compatible API. The payload structure is as follows:
```json
{"attrs":[{"key":"user.rgw.amz-replication-status","val":"FAILED"}]}
```

The operation can be logged based on the log_op argument in the HTTP
request.

Signed-off-by: Seena Fallah <[email protected]>
In order to update the source object's sync status in case the object
cannot be synced due to user errors (like perm issues) this function
can be called to update the status.

Signed-off-by: Seena Fallah <[email protected]>
call fail_object_replication_status() on objects where we have perm
errors.

Signed-off-by: Seena Fallah <[email protected]>
As instance field is preserved while replicating, this can make
confusion for versioned buckets having non-versioned objects and
non-versioned buckets having versioned objects.

Signed-off-by: Seena Fallah <[email protected]>
replicating lock enabled objects require the destination bucket to
have object lock enabled.

Signed-off-by: Seena Fallah <[email protected]>
@clwluvw clwluvw requested a review from a team as a code owner March 5, 2025 20:06
clwluvw added 7 commits March 5, 2025 21:17
so it can skip setting the attr if the object has been modified.

Signed-off-by: Seena Fallah <[email protected]>
support unmodified since arg for setting the attrs in RGWRados, so
if the object has been modified by that time, we stop setting the
attrs.

Signed-off-by: Seena Fallah <[email protected]>
@adamemerson
Copy link
Contributor

jenkins test make check arm64

…ocks

Reject PutBucketReplication calls if versioning is not identical
between the source and destination buckets. This check also applies
to object lock configurations to ensure consistency.

Signed-off-by: Seena Fallah <[email protected]>
@adamemerson adamemerson requested a review from smanjara March 6, 2025 18:49
OP_POST,
OP_COPY,
OP_OPTIONS,
OP_PATCH,
Copy link
Contributor

Choose a reason for hiding this comment

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

I've been a fan of PATCH ever since seeing it in LDP/SOLID.

Given that terrible middle-boxes are why we're not using SCTP and DCCP, do we have to worry about HTTP proxies between the clusters? I recall that being very unsupported, but I want to check.

Copy link
Member Author

Choose a reason for hiding this comment

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

do we have to worry about HTTP proxies between the clusters?

To my knowledge, I don't think so.


};

template <class T, class E = int>
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this type parameter just in case we have some reason to add output later?

Copy link
Member Author

Choose a reason for hiding this comment

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

Yes, Just wanted to keep it unified with the rest already defined in the file.

@adamemerson
Copy link
Contributor

@smanjara This looks good to me. Could you give it a once over in case there's anything replication-related I forgot?

@smanjara
Copy link
Contributor

smanjara commented Mar 6, 2025

@smanjara This looks good to me. Could you give it a once over in case there's anything replication-related I forgot?

@clwluvw i haven't yet taken a look, but can this PR be tested and validated independent of #61962?

@clwluvw
Copy link
Member Author

clwluvw commented Mar 6, 2025

@smanjara This looks good to me. Could you give it a once over in case there's anything replication-related I forgot?

@clwluvw i haven't yet taken a look, but can this PR be tested and validated independent of #61962?

No, tests are based on actions defined in that PR (and some fixes in terms of perm evaluation). We would need that first.

@github-actions
Copy link

This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved

@cbodley
Copy link
Contributor

cbodley commented Mar 14, 2025

i opened https://tracker.ceph.com/issues/70486 to track replication policy where versioning/object-lock status differs. i think we'll want to backport that fix, even if it doesn't include changes to policy or x-amz-replication-status

@clwluvw
Copy link
Member Author

clwluvw commented Mar 15, 2025

i opened https://tracker.ceph.com/issues/70486 to track replication policy where versioning/object-lock status differs. i think we'll want to backport that fix, even if it doesn't include changes to policy or x-amz-replication-status

Opened #62323

@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Jun 28, 2025
@github-actions
Copy link

This pull request has been automatically closed because there has been no activity for 90 days. Please feel free to reopen this pull request (or open a new one) if the proposed change is still appropriate. Thank you for your contribution!

@github-actions github-actions bot closed this Jul 28, 2025
@clwluvw clwluvw reopened this Jul 28, 2025
@clwluvw clwluvw removed the stale label Jul 28, 2025
@github-actions
Copy link

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Sep 26, 2025
@clwluvw clwluvw removed the stale label Oct 6, 2025
@clwluvw
Copy link
Member Author

clwluvw commented Oct 6, 2025

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days. If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward. If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

still waiting for the prerequisite PR to be addressed.

@github-actions
Copy link

github-actions bot commented Dec 5, 2025

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions github-actions bot added the stale label Dec 5, 2025
@github-actions
Copy link

github-actions bot commented Jan 4, 2026

This pull request has been automatically closed because there has been no activity for 90 days. Please feel free to reopen this pull request (or open a new one) if the proposed change is still appropriate. Thank you for your contribution!

@github-actions github-actions bot closed this Jan 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants