[
https://issues.apache.org/jira/browse/SOLR-3621?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Uwe Schindler reopened SOLR-3621:
---------------------------------
Hi, this seems to have caused a hang in DIH:
{noformat}
[junit4:junit4]
"TEST-TestScope-org.apache.solr.handler.dataimport.TestSqlEntityProcessorDelta2.testCompositePk_DeltaImport_delete-seed#[8C1D20BFF6E9C021]"
prio=10 tid=0x00007f1cb4560800 nid=0x1227 in Object.wait() [0x00007f1c92c02000]
[junit4:junit4] java.lang.Thread.State: WAITING (on object monitor)
[junit4:junit4] at java.lang.Object.wait(Native Method)
[junit4:junit4] - waiting on <0x00000000fb258658> (a
org.apache.solr.update.DefaultSolrCoreState)
[junit4:junit4] at java.lang.Object.wait(Object.java:485)
[junit4:junit4] at
org.apache.solr.update.DefaultSolrCoreState.getIndexWriter(DefaultSolrCoreState.java:59)
[junit4:junit4] - locked <0x00000000fb258658> (a
org.apache.solr.update.DefaultSolrCoreState)
[junit4:junit4] at
org.apache.solr.update.DirectUpdateHandler2.deleteAll(DirectUpdateHandler2.java:140)
[junit4:junit4] at
org.apache.solr.update.DirectUpdateHandler2.deleteByQuery(DirectUpdateHandler2.java:361)
[junit4:junit4] - locked <0x00000000fb2584d8> (a
org.apache.solr.update.DirectUpdateHandler2)
[junit4:junit4] at
org.apache.solr.update.processor.RunUpdateProcessor.processDelete(RunUpdateProcessorFactory.java:67)
[junit4:junit4] at
org.apache.solr.update.processor.UpdateRequestProcessor.processDelete(UpdateRequestProcessor.java:55)
[junit4:junit4] at
org.apache.solr.update.processor.DistributedUpdateProcessor.doDeleteByQuery(DistributedUpdateProcessor.java:728)
[junit4:junit4] at
org.apache.solr.update.processor.DistributedUpdateProcessor.processDelete(DistributedUpdateProcessor.java:601)
[junit4:junit4] at
org.apache.solr.update.processor.UpdateRequestProcessor.processDelete(UpdateRequestProcessor.java:55)
[junit4:junit4] at
org.apache.solr.handler.dataimport.AbstractDataImportHandlerTestCase$TestUpdateRequestProcessor.processDelete(AbstractDataImportHandlerTestCase.java:364)
{noformat}
See this build for a complete stack trace:
http://jenkins.sd-datasolutions.de/job/Lucene-Solr-trunk-Linux-Java6-64/1291/console
> Fix concurrency race around newIndexWriter
> -------------------------------------------
>
> Key: SOLR-3621
> URL: https://issues.apache.org/jira/browse/SOLR-3621
> Project: Solr
> Issue Type: Bug
> Components: update
> Reporter: Mark Miller
> Assignee: Mark Miller
> Priority: Minor
> Fix For: 4.0, 5.0
>
> Attachments: SOLR--3621.patch
>
>
> When I did the first big refactor on update handler, I was trying to never
> close the index writer - I had to give in on this goal due to the replication
> handler - it requires rebooting the indexwriter. At the time, I settled for
> allowing a little race that didn't show up as an issue in tests - this IW
> reboot was always a bit of a hack in the past anyhow.
> Now that the dust has settled, we should make this air tight though. I'd like
> to make opening a new indexwriter a full class citizen rather than a hacky
> method only used minimally for replication to reboot things. It should be a
> solid API that is valid for any uses down the road.
> For some IW config changes, we may want to do it in 'some' cases on reload.
> To do this, we have to start ref counting iw use - so that we only actually
> open a new one and close the old one when it's not in use at all.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]