Details
-
Task
-
Resolution: Unresolved
-
Major
-
None
-
None
-
None
-
None
-
1
Description
The logic here https://github.com/couchbase/couchbase-jvm-core/commit/6ad3036b6ec8b6ab4511b8f6422f0501d48b672d#diff-9c94fc0fe943faed5111f33a38a913c0R314 has a bug.
It's parsing a JSON value, and if it reaches the end of the stream in the middle of the value, it generally throws an exception to signal that it needs more data.
For reasons I'm not certain on (this code has existed since day one and its creator has now left us), if that value is a number and it's received more than 2 bytes, then it decides to proceed instead. It raises that potentially truncated number as a valid row.
(I'm not entirely sure why but this also causes the row processing to finish.)