void PeeringState::proc_lease(const pg_lease_t& l)
{
+ if (get_osdmap()->require_osd_release < ceph_release_t::octopus) {
+ return;
+ }
if (!is_nonprimary()) {
return;
}
void PeeringState::proc_lease_ack(int from, const pg_lease_ack_t& a)
{
+ if (get_osdmap()->require_osd_release < ceph_release_t::octopus) {
+ return;
+ }
auto now = pl->get_mnow();
bool was_min = false;
for (unsigned i = 0; i < acting.size(); ++i) {
bool PeeringState::check_prior_readable_down_osds(const OSDMapRef& map)
{
+ if (get_osdmap()->require_osd_release < ceph_release_t::octopus) {
+ return false;
+ }
bool changed = false;
auto p = prior_readable_down_osds.begin();
while (p != prior_readable_down_osds.end()) {
purged.intersection_of(to_trim, info.purged_snaps);
to_trim.subtract(purged);
- renew_lease(pl->get_mnow());
- schedule_renew_lease();
+ if (get_osdmap()->require_osd_release >= ceph_release_t::octopus) {
+ renew_lease(pl->get_mnow());
+ schedule_renew_lease();
+ }
// adjust purged_snaps: PG may have been inactive while snaps were pruned
// from the removed_snaps_queue in the osdmap. update local purged_snaps
bool PrimaryLogPG::check_laggy(OpRequestRef& op)
{
+ if (get_osdmap()->require_osd_release < ceph_release_t::octopus) {
+ dout(10) << __func__ << " require_osd_release < octopus" << dendl;
+ return true;
+ }
if (state_test(PG_STATE_WAIT)) {
dout(10) << __func__ << " PG is WAIT state" << dendl;
} else if (!state_test(PG_STATE_LAGGY)) {
bool PrimaryLogPG::check_laggy_requeue(OpRequestRef& op)
{
+ if (get_osdmap()->require_osd_release < ceph_release_t::octopus) {
+ return true;
+ }
if (!state_test(PG_STATE_WAIT) && !state_test(PG_STATE_LAGGY)) {
return true; // not laggy
}