Details
-
Bug
-
Resolution: Fixed
-
Critical
-
6.6.2, Cheshire-Cat
-
1
Description
Normal documents seems to have a "datatype" of "binary"
This seems to be an issue for all new accessors upsert, insert, and replace
Setup
a... KEY "a": "1" DATA {"id":"1","type":"a"}
b... Bucket Alias dst_bkt "destination" r+w
Output
2021-02-11T14:37:59.913-08:00 [INFO] "1" "a:1" {"id":"1","type":"a"}
|
2021-02-11T14:37:59.914-08:00 [INFO] "2" "success adv. insert: result" {"meta":{"id":"a:1","cas":"1613083079914553344","datatype":"binary"},"success":true}
|
2021-02-11T14:37:59.915-08:00 [INFO] "3" "a:1" {"id":"1","type":"a"}
|
2021-02-11T14:37:59.915-08:00 [INFO] "4" "success adv. upsert: result" {"meta":{"id":"a:1","cas":"1613083079915339776","datatype":"binary"},"success":true}
|
2021-02-11T14:37:59.915-08:00 [INFO] "5" "a:1" {"id":"1","type":"a"}
|
2021-02-11T14:37:59.916-08:00 [INFO] "6" "success adv. replace: result" {"meta":{"id":"a:1","cas":"1613083079915929600","datatype":"binary"},"success":true}
|
2021-02-11T14:37:59.916-08:00 [INFO] "7" "a:1" {"id":"1","type":"a"}
|
Code:
function OnUpdate(doc, meta) {
|
log("1",meta.id,doc);
|
var result;
|
|
result = couchbase.insert(dst_bkt,meta,doc);
|
if (result.success) {
|
log("2",'success adv. insert: result',result);
|
} else {
|
log("2",'failure adv. insert: id',meta.id,'result',result);
|
}
|
log("3",meta.id,dst_bkt[meta.id]);
|
meta = result.meta;
|
|
result = couchbase.upsert(dst_bkt,meta,doc);
|
if (result.success) {
|
log("4",'success adv. upsert: result',result);
|
} else {
|
log("4",'failure adv. upsert: id',meta.id,'result',result);
|
}
|
log("5",meta.id,dst_bkt[meta.id]);
|
meta = result.meta;
|
|
result = couchbase.replace(dst_bkt,meta,doc);
|
if (result.success) {
|
log("6",'success adv. replace: result',result);
|
} else {
|
log("6",'failure adv. replace: id',meta.id,'result',result);
|
}
|
log("7",meta.id,dst_bkt[meta.id]);
|
}
|
Feeding a real binary document I get the same output - not I did a ctrl-L for the data
create SampleDocument2 -V '^LZ' -U couchbase://localhost/source -u admin -P jtester
|
KEY "SampleDocument2" DATA "\fZ"
2021-02-11T14:50:36.721-08:00 [INFO] "1" "SampleDocument2" {}
|
2021-02-11T14:50:36.722-08:00 [INFO] "2" "success adv. insert: result" {"meta":{"id":"SampleDocument2","cas":"1613083836722511872","datatype":"binary"},"success":true}
|
2021-02-11T14:50:36.723-08:00 [INFO] "3" "SampleDocument2" {}
|
2021-02-11T14:50:36.723-08:00 [INFO] "4" "success adv. upsert: result" {"meta":{"id":"SampleDocument2","cas":"1613083836723101696","datatype":"binary"},"success":true}
|
2021-02-11T14:50:36.723-08:00 [INFO] "5" "SampleDocument2" {}
|
2021-02-11T14:50:36.723-08:00 [INFO] "6" "success adv. replace: result" {"meta":{"id":"SampleDocument2","cas":"1613083836723429376","datatype":"binary"},"success":true}
|
2021-02-11T14:50:36.723-08:00 [INFO] "7" "SampleDocument2" {}
|
Attachments
Issue Links
- is a backport of
-
MB-44274 Normal documents return "datatype":"binary" in advanced accessors
- Closed
For Gerrit Dashboard: MB-44333 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
146313,3 | MB-44333: Fix datatype of metadata object for update operation | mad-hatter | eventing | Status: MERGED | +2 | +1 |
146971,4 | MB-44333: Return datatype in meta object only if its given populated by lcb | mad-hatter | eventing | Status: MERGED | +2 | +1 |