|A query with multiple filters on an index key, one of which was a parameter, could produce incorrect results. This was caused by incorrectly composing the exact index spans to support the query.
|The way in which exact spans are set has been modified to correct this issue.
This issue cropped up in Sync Gateway test environment, only when using docker image 7.1.1. It does not occur in 7.1.0 or 7.0.3.
I've created a golang application to demonstrate the issue here: https://github.com/torcolvin/limit711 which uses the state of the database from our test environment. Using ./run_7.1.1.sh will produce only 3 users from the query while ./run_7.1.0.sh produces the expected results.
- Running the same query in the workbench produces the expected 5 results
- After running the query in the workbench, the go program produce the expected results
- Using the go SDK, running EXPLAIN before making the query will return the expected 5 results
The query is
and the index is: