static const string datalog_sync_status_oid_prefix = "datalog.sync-status";
static const string datalog_sync_status_shard_prefix = "datalog.sync-status.shard";
static const string datalog_sync_full_sync_index_prefix = "data.full-sync.index";
+static const string bucket_full_status_oid_prefix = "bucket.full-sync-status";
static const string bucket_status_oid_prefix = "bucket.sync-status";
static const string object_status_oid_prefix = "bucket.sync-status";
<< " bucket:" << dest_bucket << ' ';
}
+string RGWBucketPipeSyncStatusManager::full_status_oid(const rgw_zone_id& source_zone,
+ const rgw_bucket& source_bucket,
+ const rgw_bucket& dest_bucket)
+{
+ if (source_bucket == dest_bucket) {
+ return bucket_full_status_oid_prefix + "." + source_zone.id + ":"
+ + dest_bucket.get_key();
+ } else {
+ return bucket_full_status_oid_prefix + "." + source_zone.id + ":"
+ + dest_bucket.get_key() + ":" + source_bucket.get_key();
+ }
+}
+
string RGWBucketPipeSyncStatusManager::inc_status_oid(const rgw_zone_id& source_zone,
const rgw_bucket_sync_pair_info& sync_pair)
{
std::map<int, rgw_bucket_shard_sync_info>& get_sync_status() { return sync_status; }
int init_sync_status(const DoutPrefixProvider *dpp);
+ static std::string full_status_oid(const rgw_zone_id& source_zone,
+ const rgw_bucket& source_bucket,
+ const rgw_bucket& dest_bucket);
static std::string inc_status_oid(const rgw_zone_id& source_zone,
const rgw_bucket_sync_pair_info& bs);
// specific source obj sync status, can be used by sync modules