Detect negative value for analysis time in UimaProcessContainer.doProcess() and log more details. Performance breakdown for one job showed negative analysis time. This was only observed and reported once. The hypothesis is that the JP provided bad data to the JD. Need proof that this is indeed the case.
The JP code computes per CAS analysis time by doing before AE.process() and after snapshots and than computing delta essentially:
after.analysisTime() - before.analysisTime. The uima-core analysisTime is cumulative and increasing each time process is called. In theory the delta should always be > 0.