Details
-
Task
-
Resolution: Fixed
-
Major
-
4.0.0
-
Security Level: Public
-
None
-
Mar 9 - Mar 27
Description
The view-engine needs to retrieve the sequence numbers quite frequently. Currnetly it's done through the stats command, but that's fairly slow. Nimish did some profiling and found out that this is certainly a bottlneck for `stale=false` requests, especially when no data changed.
Hence I'd like to have a Get Sequence Numbers command to speed that up. The advantage of a special command are:
- It's a single packet response, not one packet per vBucket
- The data is binary encoded, hence less parsing overhead
- The view engine only needs the sequence numbers from the server it is connected to, not all sequence numbers. This should also make things faster as you don't need to gather the information from the whole cluster
I've made a pull request to the dcp-documentation repository [1] which adds the documentation about the command. It should include everything that is needed to implement it.
[1]: https://github.com/couchbaselabs/dcp-documentation/pull/15
Attachments
Issue Links
- blocks
-
MB-14772 3.1.0 Minor Release
- Resolved
-
MB-14545 Use get all sequence numbers DCP command
- Closed
-
MB-14528 Use get all sequence numbers DCP command
- Closed
- relates to
-
JVMCBC-260 Implement support of PROTOCOL_BINARY_CMD_GET_ALL_VB_SEQNOS
- Resolved
For Gerrit Dashboard: MB-14256 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
49733,2 | MB-14256: Add GET_ALL_VB_SEQNOS | sherlock | memcached | Status: MERGED | +2 | +1 |
49734,3 | MB-14256: Add method to get all sequence numbers | sherlock | ep-engine | Status: MERGED | +2 | +1 |
49783,1 | Merge remote-tracking branch 'couchbase/sherlock' | master | memcached | Status: MERGED | +2 | +1 |
51857,4 | MB-14256: Add GET_ALL_VB_SEQNOS | 3.0 | memcached | Status: MERGED | +2 | +1 |
51858,4 | MB-14256: Add method to get all sequence numbers | 3.0.x | ep-engine | Status: MERGED | +2 | +1 |