From: Casey Bodley Date: Wed, 8 Nov 2017 15:21:55 +0000 (-0500) Subject: dencoder/rgw: expose rgw sync status types X-Git-Tag: v12.2.3~200^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=239a2f8eb0ad5ba3869d0168cfa5bed81479a9d7;p=ceph.git dencoder/rgw: expose rgw sync status types Signed-off-by: Casey Bodley (cherry picked from commit 662b02489c9394a359834cd3d3527bce5b903100) --- diff --git a/src/rgw/rgw_data_sync.h b/src/rgw/rgw_data_sync.h index 934f3f322c43..56f299590640 100644 --- a/src/rgw/rgw_data_sync.h +++ b/src/rgw/rgw_data_sync.h @@ -82,6 +82,7 @@ struct rgw_data_sync_info { JSONDecoder::decode_json("num_shards", num_shards, obj); JSONDecoder::decode_json("instance_id", num_shards, obj); } + static void generate_test_instances(std::list& o); rgw_data_sync_info() : state((int)StateInit), num_shards(0) {} }; @@ -143,6 +144,7 @@ struct rgw_data_sync_marker { JSONDecoder::decode_json("timestamp", t, obj); timestamp = t.to_real_time(); } + static void generate_test_instances(std::list& o); }; WRITE_CLASS_ENCODER(rgw_data_sync_marker) @@ -174,6 +176,7 @@ struct rgw_data_sync_status { JSONDecoder::decode_json("info", sync_info, obj); JSONDecoder::decode_json("markers", sync_markers, obj); } + static void generate_test_instances(std::list& o); }; WRITE_CLASS_ENCODER(rgw_data_sync_status) diff --git a/src/rgw/rgw_dencoder.cc b/src/rgw/rgw_dencoder.cc index 415eadb3c08b..405bc6ffa4e0 100644 --- a/src/rgw/rgw_dencoder.cc +++ b/src/rgw/rgw_dencoder.cc @@ -7,6 +7,8 @@ #include "rgw_acl.h" #include "rgw_acl_s3.h" #include "rgw_cache.h" +#include "rgw_meta_sync_status.h" +#include "rgw_data_sync.h" #include "common/Formatter.h" @@ -497,3 +499,51 @@ void rgw_obj::generate_test_instances(list& o) o.push_back(new rgw_obj); } +void rgw_meta_sync_info::generate_test_instances(list& o) +{ + auto info = new rgw_meta_sync_info; + info->state = rgw_meta_sync_info::StateBuildingFullSyncMaps; + info->period = "periodid"; + info->realm_epoch = 5; + o.push_back(info); + o.push_back(new rgw_meta_sync_info); +} + +void rgw_meta_sync_marker::generate_test_instances(list& o) +{ + auto marker = new rgw_meta_sync_marker; + marker->state = rgw_meta_sync_marker::IncrementalSync; + marker->marker = "01234"; + marker->realm_epoch = 5; + o.push_back(marker); + o.push_back(new rgw_meta_sync_marker); +} + +void rgw_meta_sync_status::generate_test_instances(list& o) +{ + o.push_back(new rgw_meta_sync_status); +} + +void rgw_data_sync_info::generate_test_instances(list& o) +{ + auto info = new rgw_data_sync_info; + info->state = rgw_data_sync_info::StateBuildingFullSyncMaps; + info->num_shards = 8; + o.push_back(info); + o.push_back(new rgw_data_sync_info); +} + +void rgw_data_sync_marker::generate_test_instances(list& o) +{ + auto marker = new rgw_data_sync_marker; + marker->state = rgw_data_sync_marker::IncrementalSync; + marker->marker = "01234"; + marker->pos = 5; + o.push_back(marker); + o.push_back(new rgw_data_sync_marker); +} + +void rgw_data_sync_status::generate_test_instances(list& o) +{ + o.push_back(new rgw_data_sync_status); +} diff --git a/src/rgw/rgw_meta_sync_status.h b/src/rgw/rgw_meta_sync_status.h index e34bb05be1d7..f896ac2ad0d4 100644 --- a/src/rgw/rgw_meta_sync_status.h +++ b/src/rgw/rgw_meta_sync_status.h @@ -39,6 +39,7 @@ struct rgw_meta_sync_info { void decode_json(JSONObj *obj); void dump(Formatter *f) const; + static void generate_test_instances(std::list& ls); rgw_meta_sync_info() : state((int)StateInit), num_shards(0) {} }; @@ -87,6 +88,7 @@ struct rgw_meta_sync_marker { void decode_json(JSONObj *obj); void dump(Formatter *f) const; + static void generate_test_instances(std::list& ls); }; WRITE_CLASS_ENCODER(rgw_meta_sync_marker) @@ -112,6 +114,7 @@ struct rgw_meta_sync_status { void dump(Formatter *f) const; void decode_json(JSONObj *obj); + static void generate_test_instances(std::list& ls); }; WRITE_CLASS_ENCODER(rgw_meta_sync_status) diff --git a/src/test/encoding/types.h b/src/test/encoding/types.h index b4da4cadd355..9c9555bcddf0 100644 --- a/src/test/encoding/types.h +++ b/src/test/encoding/types.h @@ -389,6 +389,16 @@ TYPE(rgw_obj) #include "rgw/rgw_log.h" TYPE(rgw_log_entry) +#include "rgw/rgw_sync.h" +TYPE(rgw_meta_sync_info) +TYPE(rgw_meta_sync_marker) +TYPE(rgw_meta_sync_status) + +#include "rgw/rgw_data_sync.h" +TYPE(rgw_data_sync_info) +TYPE(rgw_data_sync_marker) +TYPE(rgw_data_sync_status) + #ifdef WITH_RBD #include "cls/rbd/cls_rbd.h" TYPE(cls_rbd_parent)