Database errors cause all worker threads (and the corresponding stuffer thread)
to wait indefinitely
----------------------------------------------------------------------------------------------------
Key: CONNECTORS-220
URL: https://issues.apache.org/jira/browse/CONNECTORS-220
Project: ManifoldCF
Issue Type: Bug
Components: Framework crawler agent
Affects Versions: ManifoldCF 0.2, ManifoldCF 0.1, ManifoldCF 0.3
Reporter: Karl Wright
Priority: Minor
When ManifoldCF gets a database error from a thread, it tries to recover by
resetting all threads to a known state. Unfortunately this code seems to fail,
and you wind up with a frozen crawl with all worker threads in the following
state:
"Worker thread '36'" daemon prio=6 tid=0x00000000077ed000 nid=0xa98 in
Object.wait() [0x000000000b1af000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at
org.apache.manifoldcf.crawler.system.ResetManager.waitForReset(ResetManager.java:107)
- locked <0x00000000e0005528> (a
org.apache.manifoldcf.crawler.system.WorkerResetManager)
at
org.apache.manifoldcf.crawler.system.WorkerThread.run(WorkerThread.java:110)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira