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
rgw/multisite: add x-rgw-replicated-at header to replicated objects #55503
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks great
probably we don't need a nanosecond precision if we expect a user to take the difference between |
from rgw_rest_s3.cc, it looks like we're using |
@mattbenjamin could you describe what you had in mind? or may be refactoring call is ok too if you want to discuss it there. |
14674b8
to
bc70da5
Compare
this completely addresses getting the correct replication time from the source zone to its destination; I think Bloomberg framed the conversation as being about propagating the results back to the origin--which has several problems, though I can imagine a way to get the information there using the replication log; We should get them to do a code review of the current PR |
fixes: https://tracker.ceph.com/issues/64365 Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
bc70da5
to
9bd748d
Compare
would you mind adding a note to PendingReleaseNotes to advertise this new feature? something like
|
"user.rgw.replicated-at" Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
9bd748d
to
626179f
Compare
done |
can you think of an easy test case we could write to exercise this? |
@smanjara i included this in a test batch that passed qa (https://pulpito.ceph.com/cbodley-2024-02-20_00:28:35-rgw-wip-cbodley-testing-distro-default-smithi/ with rerun https://pulpito.ceph.com/cbodley-2024-02-21_19:22:22-rgw-wip-cbodley-testing-distro-default-smithi/) |
thank you! |
try { | ||
ceph::real_time replicated_time; | ||
decode(replicated_time, i->second); | ||
dump_time(s, "x-rgw-replicated-at", replicated_time); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@smanjara i think we want to use dump_time_header()
here instead? dump_time()
is calling s->formatter->dump_string()
to format this as json/xml
i'm tracking a regression here in https://tracker.ceph.com/issues/65373
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fix in #56765
fixes: https://tracker.ceph.com/issues/64365
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
x
between the brackets:[x]
. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this please
jenkins test classic perf
jenkins test crimson perf
jenkins test signed
jenkins test make check
jenkins test make check arm64
jenkins test submodules
jenkins test dashboard
jenkins test dashboard cephadm
jenkins test api
jenkins test docs
jenkins render docs
jenkins test ceph-volume all
jenkins test ceph-volume tox
jenkins test windows
jenkins test rook e2e