[
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: [email protected]
For additional commands, e-mail: [email protected]