Mario Gazzo | 24 Apr 11:37 2015

Error handling in flow control

I am trying to get error handling to work with a custom flow control. I need to send status information back to
a service after the flow completed either with or without errors but I can only do this once for any workflow
item because it changes the state of the job, at least without error replies and wasteful requests. The
problem is that I need to do several retries before finally failing and reporting the status to a service.
First I tried to let the CPE do the retry for me by setting the max error count but then a new flow object is
created every time and I loose track of the number of retries before this. This means that I don’t know
when to report the status to the service because it should only happen after the final retry.

I then tried to let the flow instance manage the retries by moving back to the previous step again but then I
get the error “org.apache.uima.cas.CASRuntimeException: Data for Sofa feature
setLocalSofaData() has already been set”, which is because the document text is set in this particular
test case. I then also tried to reset the CAS completely before retrying the pipeline from scratch and this
of course throws the error “CASAdminException: Can't flush CAS, flushing is disabled.”. It would be
less wasteful if only the failed step is retried instead of the whole pipeline but this requires clean up,
which in some cases might be impossible. It appears that managing errors can be rather complex because the
CAS can be in an unknown state and an analysis engine operation is not idempotent. I probably need to start
the whole pipeline from the start if I want more than a single attempt, which gets me back to the problem of
tracking the number of attempts before reporting back to the service.

Does anyone have any good suggestion on how to do this in UIMA e.g. passing state information from a failed
flow to the next flow attempt?

Mario Gazzo | 23 Apr 23:36 2015

How to define flow constraints with UIMAfit?

I am implementing a custom flow controller. I was wondering how flow constraints are defined for an
aggregate AE with UIMAfit?
Mario Gazzo | 13 Apr 13:44 2015

UIMA CPE appears not to utilise more than a single thread

It appears that I can only utilise a single CAS processor even if I specify many more. I am not sure what I am
doing wrong but I think I must be missing something important in my configuration.

We only need multithreading and not the distributed features of UIMA CPE or similar. I copied and modified
the UIMA FIT CpePipeline and CpeBuilder to do this and I only altered thread counts and error handling
since I want the CAS just to be dropped on exceptions. I have verified that the accurate number of CAS
processors are created using the debugger and I can in JConsole see that an equivalent amount of active
threads are created but only one thread seems to be fed from my simple custom collection reader, which in
the simple test setup only reads input entries from a file. I can see this because I log the thread id inside
the AEs, which is always the same. I have also verified that the CAS pool size equals the number of
processors + 2.

Is there some additional collection reader configuration required to feed all the other CAS processors?

José Tomás Atria | 10 Apr 20:29 2015

ClassCastException when passing String[] parameters to external resource.

Hello all,

I'm getting this error when trying to pass values to a
 <at> ConfiugrationParameter over a String[] field in a Resource

Exception in thread "main" java.lang.ClassCastException:
[Ljava.lang.String; cannot be cast to java.lang.String

In the debugger, I can see that starting at line 175 in

          Parameter param = new Parameter_impl();
          param.setName((String) aParams[i * 2]);
          param.setValue((String) aParams[i * 2 + 1]);

aParams[i * 2] correctly resolves to the param key, while aParams[i * 2 +
1] resolves to the full string array, so param.setValue( (String) aParams[i
* 2 + 1 ]) fails with the above class cast exception.

I remember it being possible to pass String[]'s as values for
ConfigurationParameters passed to AnalysisEngineFactory... is this usage
not supported for external resources or am i doing something wrong?

(Continue reading)

Ankur Singhal | 9 Apr 14:10 2015

Filtering doesn't work on simple rule


I am newbie to UIMA RUTA framework for text analyzing and getting problem with 
filtering data on simple rule based regular expression.

I have filtering out the data by below script:

Document{-> ADDFILTERTYPE(filterAnnotation)};

But it does come not into effect on following simple regular based expression.

"\\d" -> Number

It evaluates it on whole document rather than on remaining data and takes two 
much time.

Please help us to get rid of this problem.

Thanks in advance.

Ankur Singhal

闾亚 | 31 Mar 09:58 2015

some problem in UIMA software

  I am a Apach UIMA user.I have install the UIMA SDK in my eclipse and i have successfully do some experiment in
the UIMA Tutorial and Developers' Guides.When i learn the chapter 3,i have some probelm.I can not find the
UIMA Semantic Search in Run configuration.Also,I can not find the semanticSearch shell script in the
/bin subdirectory.What is the problem?Thank you.


Peter Klügl | 30 Mar 17:03 2015

Developing UIMA Ruta Rules in Maven Projects


some UIMA Ruta users of you have maybe already noticed that the support 
for developing UIMA Ruta rules in maven-based projects will be improved 
in the next release. The first step is now done with a maven plugin for 
building descriptors (analysis engine and type system).

I want to cover and support  as many development use cases as possible 
in the next release.

Thus, some questions:
Are there any wishes like specific stuff that should be configurable?
Should there be a maven plugin for building MTWL directories?
Are there opinions for default source folders, e.g., something like 



Marshall Schor | 30 Mar 16:04 2015

There are several Apache UIMA talks at ApacheCon 2015 in Austin Texas, in 2 weeks


At the upcoming Apachecon ( )
there will be two talks and one evening birds-of-a-feather session.

The talks are "Filtering Twitter with UIMA" and
"Development of IBM Watson with UIMA DUCC".
Please go to the link above to see more details on these.

I will be there, conducting the birds-of-a-feather session, and hope to see
as many of you as can make it!

-Marshall Schor

Satya Nand Kanodia | 23 Mar 07:16 2015

Job gets stuck for infinite time


In DUCC when I submit a job , sometimes it gets hung for infinite time. 
Today it happened again. A job started  with 2 processes on 22 Mar 2015 
04:34:38   had been continuously  running till today.

I used  this configuration in job file

process_jvm_args=-Xms4g -XX\:+UseConcMarkSweepGC

  Finally I had to terminate it from DUCC-MON. Job usually takes 15 
minutes max to process documents. I submitted a batch of 433 documents 
and 342  documents had been processed. There were two errors of cas 
timed out. There were connection exceptions in both processes , which 
lasted for 10 seconds. exception happened at 22 Mar 2015 08:50:42. After 
that no response from both processes.

I got these exceptions from jd.out file

These exception in jd.out file started at 05:09:12.

22 Mar 2015 05:32:12,352 154 ERROR jd.JobDriver waitForProcessStatus     N/A process status error? java.lang.NullPointerException

(Continue reading)

Marshall Schor | 7 Mar 05:53 2015

Fwd: [ANNOUNCE] Apache UIMA Java SDK 2.7.0 released

Hash: SHA512

The Apache UIMA team is pleased to announce the release of the Apache UIMA Java
SDK, version 2.7.0.  This release includes major function enhancements as well as
bug fixes; it now requires Java 7 or later.

Apache UIMA <> is a component architecture and framework
for the analysis of
unstructured content like text, video and audio data.

Some of the changes in this release are not backwards compatible, but there are
special runtime flags
that may be set to enable graceful upgrading.  Please read the README and
(available on the web-site, as part of the News article for this release) for
more details.

- --Marshall Schor, for the Apache UIMA development team
Version: GnuPG v2.0.21 (MingW32)

(Continue reading)

Peter Klügl | 28 Feb 17:32 2015

Re: Ruta partofneq

Thank you. I try to take a look at it this weekend.



Am 27.02.2015 um 14:40 schrieb Silvestre Losada:
> Hi,
> I submited a patch with a solution for the error reported
> Best
> On 25 February 2015 at 10:41, Silvestre Losada <silvestre.losada@...>
> wrote:
>> Done
>> On 24 February 2015 at 19:35, Peter Klügl <pkluegl@...>
>> wrote:
>>> Hi,
>>> could you open an issue and attach it there? That would be great.
(Continue reading)