Multiple callbacks are allowed to run for metakv listener. These normally run fine as these do not take much time. But in-case the callbacks take time (e.g due to long DNS look-up time) then the order in which changes happen in metakv are applied out-of-order.
This is because the a spawned callback gets stalled and in the meantime, the metakv gets modified. This stalled callback overrides with values.
All this gets manifested with error:
|Error writing to metakv: revision number does not match|