Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-2414

Fix ConcurrentModificationException in uima-as client

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.1AS
    • 2.4.0AS
    • Async Scaleout
    • None

    Description

      The uima-as client throws

      org.apache.uima.adapter.jms.client.BaseUIMAAsynchronousEngineCommon_impl WARN 2012-05-25 01:08:41,391 [BaseUIMAAsynchronousEngineCommon_impl$2.2] - java.util.ConcurrentModificationException at java.util.AbstractList$SimpleListIterator.next(AbstractList.java:64) at org.apache.uima.adapter.jms.client.BaseUIMAAsynchronousEngineCommon_impl.handleServiceInfo(BaseUIMAAsynchronousEngineCommon_impl.java:1121)

      while handling ServiceInfo message from a remote service. The service sends this message right after it picks up a request msg from a queue and before calling AE's process method. The msg includes service host ip, process PID, and a service temp queue for receiving FreeCas requests (if the service is a CM). This temp queue is also used by the client to send a a Stop request to the CM to abort generation of child CASes. The above exception happens while iterating over a list of outstanding CASes. The code is trying to locate a matching CAS (by id) and to associate with it received temp reply queue in case application wants to abort the CAS. Access to the list is not synchronized in this case and causes the exception. Refactor client code to prevent concurrent access to the list.

      Attachments

        Activity

          People

            Unassigned Unassigned
            cwiklik Jaroslaw Cwiklik
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: