OPTION(bluestore_debug_freelist, OPT_BOOL, false)
OPTION(bluestore_debug_prefill, OPT_FLOAT, 0)
OPTION(bluestore_debug_prefragment_max, OPT_INT, 1048576)
+OPTION(bluestore_inject_wal_apply_delay, OPT_FLOAT, 0)
OPTION(kstore_max_ops, OPT_U64, 512)
OPTION(kstore_max_bytes, OPT_U64, 64*1024*1024)
txc->log_state_latency(logger, l_bluestore_state_wal_queued_lat);
txc->state = TransContext::STATE_WAL_APPLYING;
+ if (g_conf->bluestore_inject_wal_apply_delay) {
+ dout(20) << __func__ << " bluestore_inject_wal_apply_delay "
+ << g_conf->bluestore_inject_wal_apply_delay
+ << dendl;
+ utime_t t;
+ t.set_from_double(g_conf->bluestore_inject_wal_apply_delay);
+ t.sleep();
+ dout(20) << __func__ << " finished sleep" << dendl;
+ }
+
assert(txc->ioc.pending_aios.empty());
vector<OnodeRef>::iterator q = txc->wal_op_onodes.begin();
for (list<bluestore_wal_op_t>::iterator p = wt.ops.begin();