[
https://issues.apache.org/jira/browse/COUCHDB-954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13091321#comment-13091321
]
Adam Kocoloski commented on COUCHDB-954:
----------------------------------------
Ok, so this was weirder than I expected. We had the format of LeafsFound all
mixed up, so we were guaranteed never to match anything in the '--' call.
I posted a patch and a JS test on GitHub:
https://github.com/kocolosk/couchdb/compare/trunk...954-key-tree-latest-true
Didn't get around to writing proper commit messages yet :). I'll take a closer
look at Jan's etap and see if we can add that too. But in the meantime would
appreciate a review here.
> typo in key tree logic when latest=true
> ---------------------------------------
>
> Key: COUCHDB-954
> URL: https://issues.apache.org/jira/browse/COUCHDB-954
> Project: CouchDB
> Issue Type: Bug
> Components: Database Core
> Reporter: Adam Kocoloski
> Assignee: Adam Kocoloski
>
> This line
> https://github.com/apache/couchdb/blob/7fe84eba9982ebb3bcaa48b7aa28fdd2e130422d/src/couchdb/couch_key_tree.erl#L195
> seems like it should read KeysToGet3 = KeysToGet2 -- LeafKeysFound, and then
> KeysToGet3 should be supplied to the following invocation of
> get_key_leafs_simple. I think the current code would crash if a user made an
> open_revs call with latest=true and a pair of revisions that have a
> parent/child relationship, or at least it would crash if latest=true was
> implemented (COUCHDB-953).
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira