-
Type:
Bug
-
Resolution: Done
-
Priority:
Minor - P4
-
None
-
Affects Version/s: 3.0.3
-
Component/s: BSON
-
None
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Example:
when: def json = '{ "_id" : { "$binary" : "QUJSV1RJRkdQRWVTRmY2OWZJU0FPQT09", "$type" : "3" } }' def bdoc = BsonDocument.parse(json) then: bdoc.toJson() == json then: def bin = bdoc.getBinary("_id") bin.data.size() == 16 // FAILS
Compared to Document:
Document.parse('{ "_id" : { "$binary" : "QUJSV1RJRkdQRWVTRmY2OWZJU0FPQT09", "$type" : "03" } }')
org.bson.BsonSerializationException: Expected length to be 16, not 24.
at org.bson.codecs.UuidCodec.decode(UuidCodec.java:100)
at org.bson.codecs.UuidCodec.decode(UuidCodec.java:36)
at org.bson.codecs.DocumentCodec.readValue(DocumentCodec.java:212)
at org.bson.codecs.DocumentCodec.decode(DocumentCodec.java:141)
at org.bson.codecs.DocumentCodec.decode(DocumentCodec.java:45)
at org.bson.Document.parse(Document.java:105)
at org.bson.Document.parse(Document.java:90)
at org.bson.BsonDocumentSpecification.test parse(BsonDocumentSpecification.groovy:287)