Details
-
Bug
-
Resolution: Fixed
-
Critical
-
5.0.0
-
Untriaged
-
Unknown
Description
Unable to get or set full document body and xattr in a single operation, when using gocb.
Attempting to set the path to "" for the document body portion of the SUBDOC_MULTI_LOOKUP or SUBDOC_MULTI_MUTATION operation results in an 'invalid arguments' error, which appears to be gocb's translation of statusCode(0x04).
gocb code to for the attempted upsert:
docFragment, err := bucket.Bucket.MutateIn(k, 0, uint32(exp)).
UpsertEx("sync", xv, gocb.SubdocFlagXattr|gocb.SubdocFlagCreatePath).
UpsertEx("", v, gocb.SubdocFlagNone).
Execute()
Based on my review of the gocb code, it's not complaining about the empty path - the request gets sent to the server successfully.
I'm getting the same error (invalid arguments) when trying to do a lookup of doc body and XATTR in a single multi_lookup.