Details

Description

In effort to fix MB-6619, we change the ensure_full_commit from actively polling ep_engine stats during checkpointing, to event notification manner that it only gets notified when the checkpoint id changes. Today mc_connection:do_notify_vbucket_update() push event to event manager whenever the vbstate changes, which covers much more than checkpoint ID change. To avoid overhead to parse a large amount of unwanted msg from event manager, ep_engine need to provides a boolean flag to indicate that in this event, the checkpoint ID changes or not. Then we can filter out all other events involving no checkpoint change.

This may involves a protocol change between ep_engine and ns_server, commits on both sides need to be merged at the same time.