Details
-
Bug
-
Resolution: Fixed
-
Major
-
3.0
-
Security Level: Public
Description
The view_group coordinator blocks lot of times whenever it needs to start updater since it has to grab vbucket-seqno stats from ep-engine. It causes the query throughput to go down almost half compared to 2.5.
The time taking get_seqs() should be performed by a separate erlang process whenever updater needs to be started. An updater scheduler process should be introduced and all updater start request should be processed through updater scheduler. This reduce the contention caused in view_group due to get_stats() call and improve latency for stale=update_after queries.
Attachments
For Gerrit Dashboard: MB-11728 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
39153,6 | MB-11728 Avoid blocking view group process for get_stats() | master | couchdb | Status: MERGED | +2 | +1 |
39404,3 | MB-11728 Fix upr fake server implementation of vbucket-seqno stats | master | couchdb | Status: MERGED | +2 | +1 |
39598,3 | Revert "MB-11728 Avoid blocking view group process for get_stats()" | master | couchdb | Status: MERGED | +2 | +1 |
39724,6 | MB-11728 Use provided seqnos for starting updater | master | couchdb | Status: MERGED | +2 | +1 |
39725,9 | MB-11728 Implement partition seqnos lazy cache | master | couchdb | Status: MERGED | +2 | +1 |
39726,11 | MB-11728 Make seqnos cache updates asynchronous | master | couchdb | Status: MERGED | +2 | +1 |