You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Yonik Seeley (JIRA)" <ji...@apache.org> on 2015/09/01 18:52:45 UTC

[jira] [Updated] (SOLR-7836) Possible deadlock when closing refcounted index writers.

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

Yonik Seeley updated SOLR-7836:
-------------------------------
    Attachment: SOLR-7836.patch

OK, I found the issue.
When I re-wrote the SolrCoreState locking to use reentrant read-write locks, I was using the current trunk as a reference.  Unfortunately, a previous commit in this issue had introduced a bug by changing the semantics.  I didn't realize it until I went back to look at trunk before any commits on this issue.

The bug was the addition of this to closeIndexWriter:
{code}
     } finally {
        pauseWriter = false;
        writerPauseLock.notifyAll();
      }
{code}

closeIndexWriter / newIndexWriter are meant to be used as a pair, and block any readers inbetween them being called.

I've been looping ChaosMonkeySafeLeaderTest since yesterday afternoon and no fails yet.

> Possible deadlock when closing refcounted index writers.
> --------------------------------------------------------
>
>                 Key: SOLR-7836
>                 URL: https://issues.apache.org/jira/browse/SOLR-7836
>             Project: Solr
>          Issue Type: Bug
>            Reporter: Erick Erickson
>            Assignee: Erick Erickson
>             Fix For: Trunk, 5.4
>
>         Attachments: SOLR-7836-reorg.patch, SOLR-7836-synch.patch, SOLR-7836.patch, SOLR-7836.patch, SOLR-7836.patch, SOLR-7836.patch, SOLR-7836.patch, deadlock_3.res.zip, deadlock_5_pass_iw.res.zip, deadlock_test
>
>
> Preliminary patch for what looks like a possible race condition between writerFree and pauseWriter in DefaultSorlCoreState.
> Looking for comments and/or why I'm completely missing the boat.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org