From: David Zafman Date: Thu, 2 May 2019 02:44:04 +0000 (-0700) Subject: osd: Fix off by 1 error in trim handling of osd_pg_log_dups_tracked X-Git-Tag: v15.1.0~2692^2~6 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=b698e34fc8e931623671b501855099050859a18a;p=ceph-ci.git osd: Fix off by 1 error in trim handling of osd_pg_log_dups_tracked Move log message out of loop so it doesn't repeat for no reason Signed-off-by: David Zafman --- diff --git a/src/osd/PGLog.cc b/src/osd/PGLog.cc index 64d923d5123..d7ad0c8dfc7 100644 --- a/src/osd/PGLog.cc +++ b/src/osd/PGLog.cc @@ -57,8 +57,9 @@ void PGLog::IndexedLog::trim( auto earliest_dup_version = log.rbegin()->version.version < cct->_conf->osd_pg_log_dups_tracked ? 0u - : log.rbegin()->version.version - cct->_conf->osd_pg_log_dups_tracked; + : log.rbegin()->version.version - cct->_conf->osd_pg_log_dups_tracked + 1; + lgeneric_subdout(cct, osd, 20) << "earliest_dup_version = " << earliest_dup_version << dendl; while (!log.empty()) { const pg_log_entry_t &e = *log.begin(); if (e.version > s) @@ -70,7 +71,6 @@ void PGLog::IndexedLog::trim( unindex(e); // remove from index, // add to dup list - lgeneric_subdout(cct, osd, 20) << "earliest_dup_version = " << earliest_dup_version << dendl; if (e.version.version >= earliest_dup_version) { if (write_from_dups != nullptr && *write_from_dups > e.version) { lgeneric_subdout(cct, osd, 20) << "updating write_from_dups from " << *write_from_dups << " to " << e.version << dendl;