Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.2.1
-
None
-
Windows XP 32 bits
Description
Buggy scenario is a CPE with a first remote processor deployed as a Vinci service and an integrated CAS consumer that throws a ResourceProcessException in its process method.
It is quite easy to reproduce with a dummy consumer with this implementation
public void processCas(CAS aCAS) throws ResourceProcessException {
throw new ResourceProcessException(new FileNotFoundException("file not found"));
}
It looks like the CPE is stuck trying to retrieve a CAS from the CAS pool that is apparently empty at some point.
My feeling is that when you have an ResourceProcessException thrown in the last component of the CPE, the code that is supposed to release the CAS from the CAS pool is not properly called...
If I suspend the process in Eclipse I can see that the CasConsumer and the Collection Reader pipelines Threads are waiting on the
CPECasPool.getCas(long) method
I attach the uima.log set to the FINEST level