You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Marcel Reutegger (JIRA)" <ji...@apache.org> on 2005/08/09 10:56:35 UTC

[jira] Created: (JCR-178) Allow concurrent index updates and queries

Allow concurrent index updates and queries
------------------------------------------

         Key: JCR-178
         URL: http://issues.apache.org/jira/browse/JCR-178
     Project: Jackrabbit
        Type: Improvement
  Components: query  
 Environment: svn revision: 231015
    Reporter: Marcel Reutegger
 Assigned to: Marcel Reutegger 
    Priority: Minor


Currently the query handler either allows one modification or multiple queries at a time. That is, write operations are separated from read operations. With this synchronization scheme multiple queries may run concurrently, but only in the absence of a write operation.

There is one major drawback with this synchronization: a single long running query is able to block the whole workspace from committing changes. Because the query handler is coupled to the Workspace via a synchronous event listener, further processing is blocked until the query handler has finished its event processing (reflecting the changes in the index).

Instead, each index modification should be non-blocking, in the sense that an index modification should not have to wait for any queries to complete.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Resolved: (JCR-178) Allow concurrent index updates and queries

Posted by "Marcel Reutegger (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JCR-178?page=all ]
     
Marcel Reutegger resolved JCR-178:
----------------------------------

    Resolution: Fixed

Queries and one write operation can now run concurrently. Write operations are still serialized as is the case in the SharedItemStateManager. This area still gives some room for improvements.

svn revision: 232801

> Allow concurrent index updates and queries
> ------------------------------------------
>
>          Key: JCR-178
>          URL: http://issues.apache.org/jira/browse/JCR-178
>      Project: Jackrabbit
>         Type: Improvement
>   Components: query
>  Environment: svn revision: 231015
>     Reporter: Marcel Reutegger
>     Assignee: Marcel Reutegger
>     Priority: Minor

>
> Currently the query handler either allows one modification or multiple queries at a time. That is, write operations are separated from read operations. With this synchronization scheme multiple queries may run concurrently, but only in the absence of a write operation.
> There is one major drawback with this synchronization: a single long running query is able to block the whole workspace from committing changes. Because the query handler is coupled to the Workspace via a synchronous event listener, further processing is blocked until the query handler has finished its event processing (reflecting the changes in the index).
> Instead, each index modification should be non-blocking, in the sense that an index modification should not have to wait for any queries to complete.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Closed: (JCR-178) Allow concurrent index updates and queries

Posted by "Marcel Reutegger (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/JCR-178?page=all ]
     
Marcel Reutegger closed JCR-178:
--------------------------------


> Allow concurrent index updates and queries
> ------------------------------------------
>
>          Key: JCR-178
>          URL: http://issues.apache.org/jira/browse/JCR-178
>      Project: Jackrabbit
>         Type: Improvement
>   Components: query
>  Environment: svn revision: 231015
>     Reporter: Marcel Reutegger
>     Assignee: Marcel Reutegger
>     Priority: Minor

>
> Currently the query handler either allows one modification or multiple queries at a time. That is, write operations are separated from read operations. With this synchronization scheme multiple queries may run concurrently, but only in the absence of a write operation.
> There is one major drawback with this synchronization: a single long running query is able to block the whole workspace from committing changes. Because the query handler is coupled to the Workspace via a synchronous event listener, further processing is blocked until the query handler has finished its event processing (reflecting the changes in the index).
> Instead, each index modification should be non-blocking, in the sense that an index modification should not have to wait for any queries to complete.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira