If so why the client op priority is default 63 and recovery op is 3? This means that by default recovery op is more prioritize than client op!
Exactly the opposite. Client ops take priority over recovery ops. And various other ops have priorities as described in the document I pointed you to.
Now that I poke around, I do find some resources that claim that a *lower* osd_recovery_op_priority value *increases* the priority of recovery ops vs client ops, eg. this one: https://www.suse.com/support/kb/doc/?id=000019693 This is counter to everything I’ve always been told and observed. Poking around in the sources my should-be-in-bed eyes don’t find a definitive answer, but I do see in OpRequest.cc : if (req->get_priority() < tracker->cct->_conf->osd_client_op_priority) { // don't warn as quickly for low priority ops warn_interval_multiplier = tracker->cct->_conf->osd_recovery_op_warn_multiple; } which seems to corroborate the idea that a lower value is a lower priority. If we can get consensus here I’ll add a bit to the docs to make the relationship more clear.