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

Yonik Seeley commented on SOLR-7836:
------------------------------------

OK, so it wasn't too hard for me to replicate the deadlocks w/ the latest 
commits backed out, and the traces are similar to what was posted before... 
it's getIndexWriter fighting with newIndexWriter.

{code}
  2> "WRITER10" ID=28 TIMED_WAITING on java.lang.Object@d8cdd45
  2>    at java.lang.Object.wait(Native Method)
  2>    - timed waiting on java.lang.Object@d8cdd45
  2>    at 
org.apache.solr.update.DefaultSolrCoreState.getIndexWriter(DefaultSolrCoreState.java:96)
  2>    at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1588)
  2>    at org.apache.solr.update.UpdateLog.add(UpdateLog.java:455)
  2>    - locked org.apache.solr.update.UpdateLog@1df2955d
  2>    at 
org.apache.solr.update.DirectUpdateHandler2.addAndDelete(DirectUpdateHandler2.java:452)
[...]
  2> "TEST-TestReloadDeadlock.testReloadDeadlock-seed#[D13A45EBBFA304C4]" ID=12 
TIMED_WAITING on java.lang.Object@d8cdd45
  2>    at java.lang.Object.wait(Native Method)
  2>    - timed waiting on java.lang.Object@d8cdd45
  2>    at 
org.apache.solr.update.DefaultSolrCoreState.newIndexWriter(DefaultSolrCoreState.java:158)
  2>    - locked org.apache.solr.update.DefaultSolrCoreState@7d338874
  2>    at org.apache.solr.core.SolrCore.reload(SolrCore.java:479)
  2>    at org.apache.solr.core.CoreContainer.reload(CoreContainer.java:830)
  2>    at 
org.apache.solr.search.TestReloadDeadlock.testReloadDeadlock(TestReloadDeadlock.java:182)
{code}

On straight trunk, I still get failures (just not deadlocks):
{code}
  2> 3406 ERROR (WRITER6) [    ] o.a.s.c.SolrCore 
org.apache.solr.common.SolrException: Error opening new searcher
  2>    at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1673)
  2>    at org.apache.solr.core.SolrCore.getRealtimeSearcher(SolrCore.java:1530)
  2>    at 
org.apache.solr.update.VersionInfo.getVersionFromIndex(VersionInfo.java:202)
  2>    at org.apache.solr.update.UpdateLog.lookupVersion(UpdateLog.java:783)
  2>    at 
org.apache.solr.update.VersionInfo.lookupVersion(VersionInfo.java:195)
  2>    at 
org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1088)
  2>    at 
org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:705)
  2>    at 
org.apache.solr.update.processor.LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:104)
  2>    at 
org.apache.solr.handler.loader.JsonLoader$SingleThreadedJsonLoader.handleAdds(JsonLoader.java:470)
  2>    at 
org.apache.solr.handler.loader.JsonLoader$SingleThreadedJsonLoader.processUpdate(JsonLoader.java:134)
  2>    at 
org.apache.solr.handler.loader.JsonLoader$SingleThreadedJsonLoader.load(JsonLoader.java:113)
  2>    at org.apache.solr.handler.loader.JsonLoader.load(JsonLoader.java:76)
  2>    at 
org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:98)
  2>    at 
org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
  2>    at 
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:151)
  2>    at org.apache.solr.core.SolrCore.execute(SolrCore.java:2079)
  2>    at 
org.apache.solr.servlet.DirectSolrConnection.request(DirectSolrConnection.java:131)
  2>    at org.apache.solr.SolrTestCaseJ4.updateJ(SolrTestCaseJ4.java:1104)
  2>    at 
org.apache.solr.SolrTestCaseJ4.addAndGetVersion(SolrTestCaseJ4.java:1250)
  2>    at 
org.apache.solr.search.TestReloadDeadlock.addDoc(TestReloadDeadlock.java:200)
  2>    at 
org.apache.solr.search.TestReloadDeadlock.access$100(TestReloadDeadlock.java:46)
  2>    at 
org.apache.solr.search.TestReloadDeadlock$1.run(TestReloadDeadlock.java:156)
  2> Caused by: java.lang.NullPointerException
  2>    at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1642)
  2>    ... 21 more
{code}

> 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-synch.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]

Reply via email to