{
RGWRealm realm(realm_id, realm_name);
int ret = realm.init(g_ceph_context, store);
- if (ret < 0) {
+ bool default_realm_not_exist = (ret == -ENOENT && realm_id.empty() && realm_name.empty());
+
+ if (ret < 0 && !default_realm_not_exist ) {
cerr << "failed to init realm: " << cpp_strerror(-ret) << std::endl;
return -ret;
}
if (ret < 0) {
return 1;
}
- if (zonegroup.realm_id.empty()) {
+ if (zonegroup.realm_id.empty() && !default_realm_not_exist) {
zonegroup.realm_id = realm.get_id();
}
ret = zonegroup.create();