[jira] Created: (LUCENE-2783) Deadlock in IndexWriter

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

[jira] Created: (LUCENE-2783) Deadlock in IndexWriter

JIRA jira@apache.org
Deadlock in IndexWriter
-----------------------

                 Key: LUCENE-2783
                 URL: https://issues.apache.org/jira/browse/LUCENE-2783
             Project: Lucene - Java
          Issue Type: Bug
          Components: Index
    Affects Versions: 2.9.3
         Environment: ALL
            Reporter: Christoph Goller
             Fix For: 2.9.4


If autoCommit == true a merge usually triggers a commit. A commit (prepareCommit) can trigger a merge vi the flush method. There is a synchronization mechanism for commit (commitLock) and a separate synchronization mechanism for merging (ConcurrentMergeScheduler.wait). If one thread holds the commitLock monitor and another one holds the ConcurrentMergeScheduler monitor we have a deadlock.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (LUCENE-2783) Deadlock in IndexWriter

JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/LUCENE-2783?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964673#action_12964673 ]

Michael McCandless commented on LUCENE-2783:
--------------------------------------------

This sounds like it may be a dup of LUCENE-2730?  Can you test the upcoming release candidate for 2.9.4 (http://s.apache.org/fL) and see if the deadlock is resolved?

If not, can you post the full thread dump?

> Deadlock in IndexWriter
> -----------------------
>
>                 Key: LUCENE-2783
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2783
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.9.3
>         Environment: ALL
>            Reporter: Christoph Goller
>             Fix For: 2.9.4
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> If autoCommit == true a merge usually triggers a commit. A commit (prepareCommit) can trigger a merge vi the flush method. There is a synchronization mechanism for commit (commitLock) and a separate synchronization mechanism for merging (ConcurrentMergeScheduler.wait). If one thread holds the commitLock monitor and another one holds the ConcurrentMergeScheduler monitor we have a deadlock.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

[jira] Closed: (LUCENE-2783) Deadlock in IndexWriter

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

     [ https://issues.apache.org/jira/browse/LUCENE-2783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christoph Goller closed LUCENE-2783.
------------------------------------

    Resolution: Fixed

Already fixed with introduction of mergeDone flag in OneMerge of Lucene upcoming 2.9.4

> Deadlock in IndexWriter
> -----------------------
>
>                 Key: LUCENE-2783
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2783
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.9.3
>         Environment: ALL
>            Reporter: Christoph Goller
>             Fix For: 2.9.4
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> If autoCommit == true a merge usually triggers a commit. A commit (prepareCommit) can trigger a merge vi the flush method. There is a synchronization mechanism for commit (commitLock) and a separate synchronization mechanism for merging (ConcurrentMergeScheduler.wait). If one thread holds the commitLock monitor and another one holds the ConcurrentMergeScheduler monitor we have a deadlock.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (LUCENE-2783) Deadlock in IndexWriter

JIRA jira@apache.org
In reply to this post by JIRA jira@apache.org

    [ https://issues.apache.org/jira/browse/LUCENE-2783?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964693#action_12964693 ]

Michael McCandless commented on LUCENE-2783:
--------------------------------------------

OK, thanks for bringing closure!  Note that the autoCommit=true is deprecated, and as of 3.0 IW is always autoCommit=false.

> Deadlock in IndexWriter
> -----------------------
>
>                 Key: LUCENE-2783
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2783
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Index
>    Affects Versions: 2.9.3
>         Environment: ALL
>            Reporter: Christoph Goller
>             Fix For: 2.9.4
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> If autoCommit == true a merge usually triggers a commit. A commit (prepareCommit) can trigger a merge vi the flush method. There is a synchronization mechanism for commit (commitLock) and a separate synchronization mechanism for merging (ConcurrentMergeScheduler.wait). If one thread holds the commitLock monitor and another one holds the ConcurrentMergeScheduler monitor we have a deadlock.

--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]