New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deadlock during index Reorg #239

Closed
jutzig opened this Issue May 12, 2015 · 0 comments

Comments

Projects
None yet
1 participant
@jutzig
Owner

jutzig commented May 12, 2015

Between the property indexing job and the index reorg job there can be a deadlock

"Worker-1" prio=10 tid=0x00007f10f0c53000 nid=0x3ec8 in Object.wait() [0x00007f10e8f62000]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    at java.lang.Object.wait(Object.java:503)
    at org.apache.lucene.index.DocumentsWriter.waitForWaitQueue(DocumentsWriter.java:1063)
    - locked <0x000000074624f2d0> (a org.apache.lucene.index.DocumentsWriter)
    at org.apache.lucene.index.DocumentsWriter.finishDocument(DocumentsWriter.java:1050)
    - locked <0x000000074624f2d0> (a org.apache.lucene.index.DocumentsWriter)
    at org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:772)
    at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:2066)
    at org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:2040)
    at org.jabylon.index.properties.impl.PropertyIndex.run(PropertyIndex.java:101)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
"DefaultQuartzScheduler_Worker-10" prio=10 tid=0x000000000210f000 nid=0x3e07 waiting for monitor entry [0x00007f10ebbad000]
   java.lang.Thread.State: BLOCKED (on object monitor)
    at org.apache.lucene.index.IndexWriter.deleteAll(IndexWriter.java:2927)
    - waiting to lock <0x000000074624f348> (a org.apache.lucene.index.IndexWriter)
    at org.jabylon.index.properties.jobs.impl.ReorgIndexJob.indexWorkspace(ReorgIndexJob.java:173)
    at org.jabylon.index.properties.jobs.impl.ReorgIndexJob.run(ReorgIndexJob.java:89)
    at org.jabylon.scheduler.internal.JabylonJob.execute(JabylonJob.java:79)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)
    - locked <0x00000007408650d8> (a org.quartz.simpl.SimpleThreadPool$WorkerThread)

compare to https://issues.apache.org/jira/browse/LUCENE-5002

@jutzig jutzig added the bug label May 12, 2015

@jutzig jutzig self-assigned this May 12, 2015

@jutzig jutzig added this to the 1.2.0 milestone May 12, 2015

@jutzig jutzig closed this in 147ac2f May 12, 2015

jutzig pushed a commit that referenced this issue May 12, 2015

Johannes Utzig
#239 - Deadlock during index Reorg
additional check to make sure that returnIndexWriter is called from the
correct thread
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment