]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw/multisite: handle object stat output of attrs 55503/head
authorShilpa Jagannath <smanjara@redhat.com>
Tue, 13 Feb 2024 16:03:04 +0000 (11:03 -0500)
committerShilpa Jagannath <smanjara@redhat.com>
Wed, 14 Feb 2024 22:54:38 +0000 (17:54 -0500)
"user.rgw.replicated-at"

Signed-off-by: Shilpa Jagannath <smanjara@redhat.com>
PendingReleaseNotes
src/rgw/rgw_admin.cc

index 0ecec83ec81f9e81fe7feedcf5abf2202bc1dc9a..ecc52f2b67e63783cd16702171f9b384f61995dc 100644 (file)
@@ -1,5 +1,8 @@
 >=19.0.0
 
+* RGW: GetObject and HeadObject requests now return a x-rgw-replicated-at
+  header for replicated objects. This timestamp can be compared against the
+  Last-Modified header to determine how long the object took to replicate.
 * The cephfs-shell utility is now packaged for RHEL 9 / CentOS 9 as required
   python dependencies are now available in EPEL9.
 * RGW: S3 multipart uploads using Server-Side Encryption now replicate correctly in
index 8265852973f905716badf580c519d9ffe34453c6..5d0f9eb8437990fed1e72dea431d338e934a4fff 100644 (file)
@@ -8355,7 +8355,12 @@ next:
 
     formatter->open_object_section("attrs");
     for (iter = other_attrs.begin(); iter != other_attrs.end(); ++iter) {
-      dump_string(iter->first.c_str(), iter->second, formatter.get());
+      bufferlist& bl = iter->second;
+      if (iter->first == RGW_ATTR_OBJ_REPLICATION_TIMESTAMP) {
+        decode_dump<ceph::real_time>("user.rgw.replicated-at", bl, formatter.get());
+      } else {
+        dump_string(iter->first.c_str(), iter->second, formatter.get());
+      }
     }
     formatter->close_section();
     formatter->close_section();