On 28.10.2013 13:47, Eddie Epstein wrote:
> Assuming you would rather not share the CAS files, what I'd be looking for
> is the xmi:id values changing between the before and after files. There is
> some code in ruta that replaces CASes with serialization from files which
> could be the cause of this problem.
What code do you mean?
I have no idea what the problem could be. I would have bet that the
RutaBasic annotation cause the problem, but the problem apparently still
exists if all ruta specific annotations are yet removed in the analysis
engine.
Peter
>
> Eddie
>
>
> On Tue, Oct 22, 2013 at 10:21 AM, Eddie Epstein <eaepstein@gmail.com> wrote:
>
>> Can you share the before and after XmiCas files for a case where UIMA-AS
>> service serialization failed? No confidential info please!
>>
>> Eddie
>>
>>
>>
>> On Tue, Oct 22, 2013 at 2:27 AM, Prokopis Prokopidis <prokopis@ilsp.gr>wrote:
>>
>>> No, this is not an easily reproduced error: I have noticed it so far only
>>> upon application of typesystem-specific ruta rules. I will try to come up
>>> with an easily reproducible example.
>>>
>>> In the meantime, I followed your suggestions and added 2 XMI
>>> serialization calls at the end of the AE processing for the failing case,
>>> just before and just after using the ruta rules for modifying the
>>> annotations in my CAS. In both cases, serialization to file succeeded, with
>>> the second file containing the expected results of rule application.
>>>
>>> Unfortunately, the UIMA-AS serialization still produces the error in my
>>> original mail.
>>>
>>> Prokopis
>>>
>>>
>>> On 10/18/2013 07:09 PM, Eddie Epstein wrote:
>>>
>>>> Is this a solid error that is easily reproduced?
>>>>
>>>> The error is occurring when UIMA-AS is returning the CAS from the
>>>> service.
>>>> You could add XMI serialization to file at the end of AE processing, for
>>>> the good and failing cases. If so lucky to have that serialization fail
>>>> too, could try inserting the serialization at points earlier.
>>>>
>>>> Note that the UIMA-AS serialization is only serializing the delta changes
>>>> from the input CAS, different from what you would do.
>>>>
>>>> Eddie
>>>>
>>>>
>>>>
>>>> On Thu, Oct 17, 2013 at 12:19 PM, Prokopis Prokopidis <prokopis@ilsp.gr
>>>>> wrote:
>>>> Hi all,
>>>>> I have an AE that produces the error below when deployed as a UIMA-AS
>>>>> 2.4.0 service. The same AE as part of a UIMA 2.4.2 CPE or a uimafit 2.*
>>>>> pipeline does not produce any errors and works as expected.
>>>>>
>>>>> Among other things, this AE uses ruta rules to process the CAS. When
the
>>>>> rules are not used, the AE works as expected in both UIMA and UIMA-AS.
>>>>>
>>>>> I have tried to log all annotations generated by the AE when the rules
>>>>> are
>>>>> used and just before the AE processing is finished. The annotations seem
>>>>> the same in both the UIMA and the UIMA-AS processing scenarios.
>>>>>
>>>>> Does anyone have hints on what the cause of this might be or how I
>>>>> should
>>>>> proceed in debugging?
>>>>>
>>>>> Many thanks in advance,
>>>>>
>>>>> Prokopis
>>>>>
>>>>> WARNING:
>>>>> java.lang.****ArrayIndexOutOfBoundsException
>>>>> at org.apache.uima.internal.util.**
>>>>> **IntVector.remove(IntVector.****
>>>>> java:207)
>>>>> at org.apache.uima.internal.util.**
>>>>> **IntSet.remove(IntSet.java:**77)
>>>>> at org.apache.uima.cas.impl.****FSIndexRepositoryImpl.**
>>>>> processIndexUpdates(****FSIndexRepositoryImpl.java:****1756)
>>>>> at org.apache.uima.cas.impl.****FSIndexRepositoryImpl.****
>>>>> isModified(*
>>>>> *FSIndexRepositoryImpl.java:****1800)
>>>>> at org.apache.uima.cas.impl.****XmiCasSerializer$**
>>>>> XmiCasDocSerializer.serialize(****XmiCasSerializer.java:256)
>>>>> at org.apache.uima.cas.impl.****XmiCasSerializer$**
>>>>> XmiCasDocSerializer.access$****700(XmiCasSerializer.java:108)
>>>>> at org.apache.uima.cas.impl.****XmiCasSerializer.serialize(**
>>>>> XmiCasSerializer.java:1566)
>>>>> at org.apache.uima.aae.****UimaSerializer.****
>>>>> serializeCasToXmi(**
>>>>> UimaSerializer.java:160)
>>>>> at org.apache.uima.adapter.jms.****
>>>>> activemq.JmsOutputChannel.**
>>>>> serializeCAS(JmsOutputChannel.****java:237)
>>>>> at org.apache.uima.adapter.jms.****
>>>>> activemq.JmsOutputChannel.**
>>>>> getSerializedCas(****JmsOutputChannel.java:1223)
>>>>> at org.apache.uima.adapter.jms.****
>>>>> activemq.JmsOutputChannel.**
>>>>> sendReply(JmsOutputChannel.****java:786)
>>>>> at org.apache.uima.aae.****controller.**
>>>>> PrimitiveAnalysisEngineControl****ler_impl.process(**
>>>>> PrimitiveAnalysisEngineControl****ler_impl.java:1036)
>>>>> at org.apache.uima.aae.handler.****
>>>>> HandlerBase.invokeProcess(**
>>>>> HandlerBase.java:121)
>>>>> at org.apache.uima.aae.handler.****
>>>>> input.ProcessRequestHandler_**
>>>>> impl.****handleProcessRequestFromRemote****Client(**
>>>>> ProcessRequestHandler_**
>>>>> impl.java:542)
>>>>> at org.apache.uima.aae.handler.****
>>>>> input.ProcessRequestHandler_**
>>>>> impl.handle(****ProcessRequestHandler_impl.****java:1041)
>>>>> at org.apache.uima.aae.handler.****
>>>>> input.MetadataRequestHandler_****
>>>>> impl.handle(****MetadataRequestHandler_impl.****java:78)
>>>>> at org.apache.uima.adapter.jms.****activemq.JmsInputChannel.**
>>>>> onMessage(JmsInputChannel.****java:706)
>>>>> at org.springframework.jms.****listener.**
>>>>> AbstractMessageListenerContain****er.doInvokeListener(**
>>>>> AbstractMessageListenerContain****er.java:535)
>>>>> at org.springframework.jms.****listener.**
>>>>> AbstractMessageListenerContain****er.invokeListener(**
>>>>> AbstractMessageListenerContain****er.java:495)
>>>>> at org.springframework.jms.****listener.**
>>>>> AbstractMessageListenerContain****er.doExecuteListener(**
>>>>> AbstractMessageListenerContain****er.java:467)
>>>>> at org.springframework.jms.****listener.**
>>>>> AbstractPollingMessageListener****Container.**doReceiveAndExecute(**
>>>>> AbstractPollingMessageListener****Container.java:325)
>>>>> at org.springframework.jms.****listener.**
>>>>> AbstractPollingMessageListener****Container.receiveAndExecute(****
>>>>> AbstractPollingMessageListener****Container.java:263)
>>>>> at org.springframework.jms.****listener.**
>>>>> DefaultMessageListenerContaine****r$**AsyncMessageListenerInvoker.**
>>>>> invokeListener(****DefaultMessageListenerContaine****r.java:1058)
>>>>> at org.springframework.jms.****listener.**
>>>>> DefaultMessageListenerContaine****r$**AsyncMessageListenerInvoker.****
>>>>> run(**
>>>>> DefaultMessageListenerContaine****r.java:952)
>>>>> at java.util.concurrent.****ThreadPoolExecutor.runWorker(****
>>>>> ThreadPoolExecutor.java:1145)
>>>>> at java.util.concurrent.****ThreadPoolExecutor$Worker.run(****
>>>>> ThreadPoolExecutor.java:615)
>>>>> at org.apache.uima.aae.****UimaAsThreadFactory$1.run(**
>>>>> UimaAsThreadFactory.java:118)
>>>>> at java.lang.Thread.run(Thread.****java:724)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
|