if (shard >= num_shards || status < 0 || !*result) {
return false;
}
- sync_pair.dest_bs.shard_id = shard++;
+ sync_pair.dest_bs.shard_id = sync_pair.source_bs.shard_id = shard++;
spawn(new CheckBucketShardStatusIsIncremental(sc, sync_pair, result), false);
return true;
}
// and a loop to retry on racing writes
class InitBucketShardStatusCR : public RGWCoroutine {
RGWDataSyncCtx* sc;
- const rgw_bucket_sync_pair_info& pair;
+ rgw_bucket_sync_pair_info pair;
rgw_bucket_shard_sync_info status;
RGWObjVersionTracker objv;
rgw_bucket_index_marker_info& info;
if (shard >= num_shards || status < 0) { // stop spawning on any errors
return false;
}
- sync_pair.dest_bs.shard_id = shard++;
+ sync_pair.dest_bs.shard_id = sync_pair.source_bs.shard_id = shard++;
spawn(new InitBucketShardStatusCR(sc, sync_pair, info, marker_mgr), false);
return true;
}