We want to preserve the crash_replay_interval on old clusters being
upgraded. Kludge this by setting it to 60 (the old default) if the
crush_ruleset == 0 and owner == 0, which is normally true for just the
data pool.
This may catch other pools they created by hand, but it's still better
than having the replay interval for all pools when it is not needed.
Signed-off-by: Sage Weil <sage@newdream.net>
::decode(crash_replay_interval, bl);
} else {
flags = 0;
- crash_replay_interval = 0;
+
+ // if this looks like the 'data' pool, set the
+ // crash_replay_interval appropriately. unfortunately, we can't
+ // be precise here. this should be good enough to preserve replay
+ // on the data pool for the majority of cluster upgrades, though.
+ if (crush_ruleset == 0 && auid == 0)
+ crash_replay_interval = 60;
+ else
+ crash_replay_interval = 0;
}
calc_pg_masks();