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 "Chetan Mehrotra (JIRA)" <ji...@apache.org> on 2015/04/03 10:12:52 UTC

[jira] [Commented] (OAK-2718) NodeStateSolrServersObserver performs complete diff synchronously causing slowness in dispatch

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

Chetan Mehrotra commented on OAK-2718:
--------------------------------------

[~teofili] I can think of following options.

For 1.2
* Enable the observer via OSGi config i.e. it should work only if configured
* Wrap the observor with BackgroundObserver. See fix done for OAK-2570 for similar issue

For proper fix (which might take some time) i.e. diff only selective part we can take approach similar to one in Lucene. The {{IndexTracker}} tracks which all Lucene index are in use and then diff is only performed for those paths. This keeps the diff logic short and precise.

> NodeStateSolrServersObserver performs complete diff synchronously causing slowness in dispatch
> ----------------------------------------------------------------------------------------------
>
>                 Key: OAK-2718
>                 URL: https://issues.apache.org/jira/browse/OAK-2718
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: oak-solr
>            Reporter: Chetan Mehrotra
>            Assignee: Tommaso Teofili
>             Fix For: 1.2
>
>
> {{NodeStateSolrServersObserver}} is enabled by default and performs diff synchronously. Further it performs complete diff which might take time and would cause the dispatch thread to slowdown.
> This would cause issues at least with {{DocumentNodeStore}} as there the dispatch is done as part of background read and that call is time sensitive.
> As a fix the diff should performed asynchronously and also be selective. A similar fix was done for Lucene index as part of OAK-2570



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)