Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
osd: unlock sdata_op_ordering_lock with sdata_lock hold to avoid miss… #15891
…ing wakeup signal
We are running mysql on top of rbd. sysbench qps occasionally drops to zero
Debug code captured >2s latency between PG::queue_op() and OSD::dequeue_op().
"threadpool_empty_queue_max_wait" is 2s by default.
Normally, it should not sleep for 2s since the comming IO requests will wakeup it.
This patch unlocks sdata_op_ordering_lock with sdata_lock hold in OSD::ShardedOpWQ::_process(),
T4: WaitInterval(2s) -> it actually unlocks sdata_lock
With this one line change, we can avoid occasional high latency.
Signed-off-by: Ming Lin firstname.lastname@example.org