jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chetan Mehrotra (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-4112) Replace the query exclusive lock with a cache tracker
Date Mon, 30 May 2016 06:02:12 GMT

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

Chetan Mehrotra commented on OAK-4112:

Just for record - Current BloomFilter usage involves synchornized access. If it turns out
that it had quite adverse impact on concurrency we might need to revisit this. Couple of related
links around this
* http://stackoverflow.com/questions/11720111/thread-safe-bloomfilter
* https://github.com/google/guava/issues/1090 - Guava issue for having a concurrent BloomFilter
* A possible concurrent BloomFilter implementation https://github.com/ifesdjeen/blomstre adapted
from Cassandra implementation

> Replace the query exclusive lock with a cache tracker
> -----------------------------------------------------
>                 Key: OAK-4112
>                 URL: https://issues.apache.org/jira/browse/OAK-4112
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: documentmk, mongomk
>            Reporter: Tomek Rękawek
>            Assignee: Tomek Rękawek
>              Labels: performance
>             Fix For: 1.6, 1.5.2
>         Attachments: OAK-4112-1.patch, OAK-4112-2.patch, OAK-4112-3.patch, OAK-4112-4.patch,
OAK-4112-putifnewer.patch, OAK-4112.patch
> The {{MongoDocumentStore#query()}} method uses an expensive {{TreeLock#acquireExclusive}}
method, introduced in OAK-1897 to avoid caching outdated documents.
> It should be possible to avoid acquiring the exclusive lock, by tracking the cache changes
that occurs during the Mongo find() operation. When the find() is done, we can update the
cache with the received documents if they haven't been invalidated in the meantime.

This message was sent by Atlassian JIRA

View raw message