Details
-
Type:
Improvement
-
Status:
Resolved
-
Priority:
Critical
-
Resolution: Fixed
-
Affects Version/s: 2.0-beta-2
-
Fix Version/s: 2.0
-
Component/s: couchbase-bucket, cross-datacenter-replication
-
Security Level: Public
-
Labels:None
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.
This may involves a protocol change between ep_engine and ns_server, commits on both sides need to be merged at the same time.
MB-6632Schedule vb state snapshot task for checkpoint changes (Revision ac6c438d35cb433d30c139cc48266188e738c350)MB-6632Extend couch_notification msg to notify checkpoint changes (Revision 245d4b85e9953cf41097262a37b2ce95eb451542)MB-6632Create a new checkpoint even if the current one is empty (Revision febc5e905e30bf2ae5c42654cfc89b94cc90c58f)Result = SUCCESS
Chiyoung Seo :
Files :
* src/ep.cc
Chiyoung Seo :
Files :
* src/couch-kvstore/couch-kvstore.cc
* src/couch-kvstore/couch-kvstore.hh
* src/couch-kvstore/couch-notifier.hh
* src/couch-kvstore/couch-notifier.cc
Chiyoung Seo :
Files :
* src/checkpoint.cc