]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mon/PGMap: drop client-side pg states validations 16465/head
authorxie xingguo <xie.xingguo@zte.com.cn>
Fri, 21 Jul 2017 03:06:21 +0000 (11:06 +0800)
committerxie xingguo <xie.xingguo@zte.com.cn>
Fri, 21 Jul 2017 08:36:50 +0000 (16:36 +0800)
let mon do this instead...

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
src/mgr/MgrCommands.h
src/mon/PGMap.cc

index 535630bf9320f617d6ec89c274f681c930e952fb..3bd6cdbdcae6da097c3745394287f65cc6d39a0d 100644 (file)
@@ -21,21 +21,21 @@ COMMAND("pg dump_pools_json", "show pg pools info in json only",\
 
 COMMAND("pg ls-by-pool "               \
         "name=poolstr,type=CephString " \
-       "name=states,type=CephChoices,strings=active|clean|down|scrubbing|degraded|inconsistent|peering|repair|recovering|backfill_wait|incomplete|stale|remapped|deep_scrub|backfill|backfill_toofull|recovery_wait|undersized|activating|peered,n=N,req=false ", \
+       "name=states,type=CephString,n=N,req=false", \
        "list pg with pool = [poolname]", "pg", "r", "cli,rest")
 COMMAND("pg ls-by-primary " \
         "name=osd,type=CephOsdName " \
         "name=pool,type=CephInt,req=false " \
-       "name=states,type=CephChoices,strings=active|clean|down|scrubbing|degraded|inconsistent|peering|repair|recovering|backfill_wait|incomplete|stale|remapped|deep_scrub|backfill|backfill_toofull|recovery_wait|undersized|activating|peered,n=N,req=false ", \
+       "name=states,type=CephString,n=N,req=false", \
        "list pg with primary = [osd]", "pg", "r", "cli,rest")
 COMMAND("pg ls-by-osd " \
         "name=osd,type=CephOsdName " \
         "name=pool,type=CephInt,req=false " \
-       "name=states,type=CephChoices,strings=active|clean|down|scrubbing|degraded|inconsistent|peering|repair|recovering|backfill_wait|incomplete|stale|remapped|deep_scrub|backfill|backfill_toofull|recovery_wait|undersized|activating|peered,n=N,req=false ", \
+       "name=states,type=CephString,n=N,req=false", \
        "list pg on osd [osd]", "pg", "r", "cli,rest")
 COMMAND("pg ls " \
         "name=pool,type=CephInt,req=false " \
-       "name=states,type=CephChoices,strings=active|clean|down|scrubbing|degraded|inconsistent|peering|repair|recovering|backfill_wait|incomplete|stale|remapped|deep_scrub|backfill|backfill_toofull|recovery_wait|undersized|activating|peered,n=N,req=false ", \
+       "name=states,type=CephString,n=N,req=false", \
        "list pg with specific pool, osd, state", "pg", "r", "cli,rest")
 COMMAND("pg dump_stuck " \
        "name=stuckops,type=CephChoices,strings=inactive|unclean|stale|undersized|degraded,n=N,req=false " \
index faaa7a41ac5286a0c4acf1702dd889f36a856a5f..f64d5e9bd5017e3473081245b6032e06021d9d1b 100644 (file)
@@ -3837,7 +3837,10 @@ int process_pg_map_command(
         break;
       } else {
         int filter = pg_string_state(state_str);
-        assert(filter != -1);
+        if (filter < 0) {
+          *ss << "'" << state_str << "' is not a valid pg state";
+          return -EINVAL;
+        }
         state |= filter;
       }