Looking at your stacktrace, and lightly looking into the HAPI code, my first 
guess is this looks like a concurrency issue of some sort.

The method in the HAPI code throwing this exception is this:
    private Position getTail(List<Position> theDefinitionPath) {
        return theDefinitionPath.get(theDefinitionPath.size() - 1);
    }

In a single-threaded application, that call should always be safe, but in this 
case it is throwing an ArrayIndexOutOfBoundsException, indicating the size of 
the list is being changed elsewhere (like in another thread).

I don’t know the HAPI codebase very well, so it’s tough to say if/how that 
should be possible.

Here is semi-blind a guess though:

>From the stacktrace line here:
at ca.uhn.hl7v2.app.Responder.processMessage(Responder.java:91)

This is the method signature:
                /**
                * Processes an incoming message string and returns the response 
message
                * string. Message processing consists of parsing the message, 
finding an
                * appropriate Application and processing the message with it, 
and encoding
                * the response. Applications are chosen from among those 
registered using
                * <code>registerApplication</code>. The Parser is obtained from 
the
                * Connection associated with this Responder.
                */
                protected String processMessage(String incomingMessageString)
                                                throws HL7Exception {

It indicates message processors are chosen from the list of those registered 
with “registerApplication”.
I do not know how that registration occurs, but is it possible that multiple 
applications have been registered ?
Or that something has been instantiated multiple times somewhere?



From: Gay, Jim <g...@email.chop.edu>
Sent: Monday, January 28, 2019 1:47 PM
To: hl7api-devel@lists.sourceforge.net
Subject: [External] [HAPI-devel] ORU Ingest Error

All,

We are having an issue where our stream of ORU data suddenly stops receiving 
data.

Console error message:
An exception occurred during the execution of the HapiMessageSupplier operator. 
Processing element number 9 is terminating

The error log is attached to the email.

If anyone has any ideas I would love to hear from you.
Also, if anyone is using the ADT or ORU ingest and would like to share thoughts 
and ideas feel free to reach out.

Thanks!

Jim Gay
Enterprise Analytics & Reporting
3401 Civic Center Blvd.
Philadelphia, PA 19104
267-426-1958
g...@email.chop.edu<mailto:g...@email.chop.edu> ● chop.edu

[cid:image001.png@01D4B732.4FAFDC00]


________________________________

This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise confidential information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the e-mail by you is prohibited. Where allowed by local law, electronic 
communications with Accenture and its affiliates, including e-mail and instant 
messaging (including content), may be scanned by our systems for the purposes 
of information security and assessment of internal compliance with Accenture 
policy. Your privacy is important to us. Accenture uses your personal data only 
in compliance with data protection laws. For further information on how 
Accenture processes your personal data, please see our privacy statement at 
https://www.accenture.com/us-en/privacy-policy.
______________________________________________________________________________________

www.accenture.com
_______________________________________________
Hl7api-devel mailing list
Hl7api-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to