]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
radosgw-admin zonegroup get and zone get return defaults when there is no realm 19086/head
authorlvshanchun <lvshanchun@gmail.com>
Wed, 1 Nov 2017 19:52:48 +0000 (15:52 -0400)
committerShinobu Kinjo <shinobu@redhat.com>
Tue, 21 Nov 2017 22:19:09 +0000 (17:19 -0500)
Fixs: http://tracker.ceph.com/issues/21615
Signed-off-by: lvshanchun <lvshanchun@gmail.com>
(cherry picked from commit 2c1653ca379d0bf78dfcfe931d895a16b9bfd21f)

qa/tasks/radosgw_admin.py
src/rgw/rgw_rados.cc

index 8e744e3b6628e614cc306418b46d98018c7e254c..f23a3b9ef409202299a8a045d4eaeecb492282fd 100644 (file)
@@ -908,7 +908,7 @@ def task(ctx, config):
         stdin=StringIO(json.dumps(out)),
         check_status=True)
 
-    (err, out) = rgwadmin(ctx, client, ['zone', 'get','--rgw-zone','default'])
+    (err, out) = rgwadmin(ctx, client, ['zone', 'get'])
     assert len(out) > 0
     assert len(out['placement_pools']) == orig_placement_pools + 1
 
@@ -918,6 +918,9 @@ def task(ctx, config):
 
     (err, out) = rgwadmin(ctx, client, zonecmd, check_status=True)
 
+    # TESTCASE 'zonegroup-info', 'zonegroup', 'get', 'get zonegroup info', 'succeeds'
+    (err, out) = rgwadmin(ctx, client, ['zonegroup', 'get'], check_status=True)
+
 import sys
 from tasks.radosgw_admin import task
 from teuthology.config import config
index a44fc01a850342f51fa5064a7f556f6e7270d125..642c3ce133e527585b4f923dcf762d2a0b2fee0e 100644 (file)
@@ -481,9 +481,9 @@ int RGWZoneGroup::read_default_id(string& default_id, bool old_format)
     /* try using default realm */
     RGWRealm realm;
     int ret = realm.init(cct, store);
+    // no default realm exist
     if (ret < 0) {
-      ldout(cct, 10) << "could not read realm id: " << cpp_strerror(-ret) << dendl;
-      return -ENOENT;
+      return read_id(default_zonegroup_name, default_id);
     }
     realm_id = realm.get_id();
   }
@@ -1807,9 +1807,9 @@ int RGWZoneParams::read_default_id(string& default_id, bool old_format)
     /* try using default realm */
     RGWRealm realm;
     int ret = realm.init(cct, store);
+    //no default realm exist
     if (ret < 0) {
-      ldout(cct, 10) << "could not read realm id: " << cpp_strerror(-ret) << dendl;
-      return -ENOENT;
+      return read_id(default_zone_name, default_id);
     }
     realm_id = realm.get_id();
   }