Details
-
Bug
-
Resolution: Fixed
-
Blocker
-
7.1.1
-
Enterprise Edition 7.1.1 build 3027
-
Triaged
-
Centos 64-bit
-
-
1
-
No
-
KV May 22, KV June 2022
Description
STEPS
- Create a 3 node cluster having only data service.
- Create required buckets and collections.
- Create 20000000 items sequentially
- Update 20000000 RandomKey keys to create 50 percent fragmentation
- Create 20000000 items sequentially
- Update 20000000 RandomKey keys to create 50 percent fragmentation
- Rebalance in 1 eventing node.
- Create and deploy 3 eventing handlers - no op, bucket op and timer.
OBSERVATION
Few create timer operations are failing with LCB_ERR_DOCUMENT_NOT_FOUND (301).
Timer handler code
function OnUpdate(doc, meta) {
|
log("Doc created/updated", meta.id); |
var expiry = new Date(); |
expiry.setSeconds(expiry.getSeconds() + 3); |
|
var context = {docID : meta.id, random_text : "e6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh0R7Aumoe6cZZGHuh07Aumoe6cZZGHuh07Aumoe6cZZGHuh07Aumoe6"}; |
createTimer(timerCallback, expiry, meta.id, context);
|
}
|
|
function timerCallback(context) {
|
var result= couchbase.insert(dst_bucket,{"id":context.docID},context.random_text); |
log(result);
|
}
|
|
function OnDelete(meta) {
|
var expiry = new Date(); |
expiry.setSeconds(expiry.getSeconds() + 30); |
|
var context = {docID : meta.id };
|
createTimer(NDtimerCallback, expiry, meta.id, context);
|
}
|
|
function NDtimerCallback(context) {
|
var meta={"id":context.docID} |
var result = couchbase.delete(dst_bucket,meta);
|
log(result);
|
}
|
NOTE
This is the first time we are running these tests as Eventing service is going to be supported with Magma storage engine from 7.1.1 onwards.