]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
osd: Don't include user changeable flag in snaptrim related assert
authorDavid Zafman <dzafman@redhat.com>
Tue, 30 Apr 2019 03:20:18 +0000 (20:20 -0700)
committerDavid Zafman <dzafman@redhat.com>
Tue, 30 Apr 2019 03:20:18 +0000 (20:20 -0700)
Caused by: a53ba7314c53e75d1e0b8a0edd29181db3c93863

Fixes: http://tracker.ceph.com/issues/38124
Signed-off-by: David Zafman <dzafman@redhat.com>
src/osd/PrimaryLogPG.h

index 9aed6243b1ec7afcc5ea756a3368f2b5da67c2f1..70e390ae179a61e81130f83360eda24ab8507cb2 100644 (file)
@@ -1580,11 +1580,15 @@ private:
     explicit SnapTrimmer(PrimaryLogPG *pg) : pg(pg) {}
     void log_enter(const char *state_name);
     void log_exit(const char *state_name, utime_t duration);
-    bool can_trim() {
+    bool permit_trim() {
       return
        pg->is_clean() &&
        !pg->scrubber.active &&
-       !pg->snap_trimq.empty() &&
+       !pg->snap_trimq.empty();
+    }
+    bool can_trim() {
+      return
+       permit_trim() &&
        !pg->get_osdmap()->test_flag(CEPH_OSDMAP_NOSNAPTRIM);
     }
   } snap_trimmer_machine;
@@ -1603,7 +1607,7 @@ private:
       : my_base(ctx),
        NamedState(context< SnapTrimmer >().pg, "Trimming") {
       context< SnapTrimmer >().log_enter(state_name);
-      ceph_assert(context< SnapTrimmer >().can_trim());
+      ceph_assert(context< SnapTrimmer >().permit_trim());
       ceph_assert(in_flight.empty());
     }
     void exit() {