]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
RGW/test_multi: add a helper function to get data sync oldest incremental change
authorOguzhan Ozmen <oozmen@bloomberg.net>
Mon, 24 Nov 2025 03:09:53 +0000 (03:09 +0000)
committerOguzhan Ozmen <oozmen@bloomberg.net>
Wed, 26 Nov 2025 03:38:43 +0000 (03:38 +0000)
Signed-off-by: Oguzhan Ozmen <oozmen@bloomberg.net>
(cherry picked from commit c97d61c5c7b71daee3fd8beca6b5de2304adff76)

src/test/rgw/rgw_multi/tests.py

index fe32b232ef375bb5c8219a826fc7f9ad484c38f8..9e173aaae7a8e9dc796f6d21e4a5808579790b4e 100644 (file)
@@ -1,5 +1,6 @@
 import json
 import random
+import re
 import string
 import sys
 import time
@@ -426,6 +427,16 @@ def zonegroup_bucket_checkpoint(zonegroup_conns, bucket_name):
         if target_conn.zone.has_buckets():
             target_conn.check_bucket_eq(source_conn, bucket_name)
 
+def get_oldest_incremental_change_not_applied_epoch(zone):
+    cmd = ['sync', 'status']
+    sync_status_output, retcode = zone.cluster.admin(cmd, check_retcode=False, read_only=True)
+    assert(retcode == 0)
+    match = re.search(r"oldest incremental change not applied:\s*([0-9T:\.\+\-Z]+)", sync_status_output)
+    timestamp = match.group(1) if match else None
+    if timestamp is not None:
+        timestamp = datetime.strptime(timestamp, "%Y-%m-%dT%H:%M:%S.%f%z").timestamp()
+    return timestamp
+
 def set_master_zone(zone):
     zone.modify(zone.cluster, ['--master'])
     zonegroup = zone.zonegroup