You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2014/03/20 10:29:43 UTC

[jira] [Commented] (OAK-1567) Return Iterator instead of returning List in DocumentStore.query

    [ https://issues.apache.org/jira/browse/OAK-1567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13941547#comment-13941547 ] 

Marcel Reutegger commented on OAK-1567:
---------------------------------------

Please note that we are missing the close call on the DBCurser: OAK-1580. I think it would be better if we add the close call, but then the use of an Iterator/Iterable becomes more complex...

> Return Iterator instead of returning List in DocumentStore.query
> ----------------------------------------------------------------
>
>                 Key: OAK-1567
>                 URL: https://issues.apache.org/jira/browse/OAK-1567
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: mongomk
>    Affects Versions: 0.18
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>             Fix For: 0.20
>
>
> Currently the DocumentStore query method returns List after performing any query against backend. In case of Mongo the DBCursor returned [1] implements Iterable interface. And in all usage so far the code can work perfectly fine with Iterable
> It would be better if we change the api contract to return iterator and allow lazy traversal of the NodeDocuments. Further the pagination/batching would be handled within the Driver itself and the code above would not have to construct there on batching.
> See [2] for details
> [1] http://api.mongodb.org/java/2.0/com/mongodb/DBCursor.html
> [2] http://markmail.org/thread/ilcqtvaziie3ycb5



--
This message was sent by Atlassian JIRA
(v6.2#6252)