[ 
https://issues.apache.org/jira/browse/UIMA-4830?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jerry Cwiklik updated UIMA-4830:
--------------------------------
    Issue Type: Improvement  (was: Bug)

> UIMA-AS: refactor SharedConnection code in the client
> -----------------------------------------------------
>
>                 Key: UIMA-4830
>                 URL: https://issues.apache.org/jira/browse/UIMA-4830
>             Project: UIMA
>          Issue Type: Improvement
>          Components: Async Scaleout
>            Reporter: Jerry Cwiklik
>            Assignee: Jerry Cwiklik
>             Fix For: 2.8.1AS
>
>
> Current UIMA-AS client code uses single instance of a semaphore 
> (sharedConnectionSemaphore) to guard access to JMS connections. The client 
> code creates a connection for each broker url a client wants to use. So there 
> may be multiple shared connections (one per broker URL) and one semaphore for 
> all. If one of the shared connections hangs as recently observed when using 
> failover://(...), other threads hang waiting for a semaphore to be released. 
> The hang is caused by silent retry in AMQ connection.start(). This method 
> does not return if broker is not accepting a connection and client uses 
> failover protocol.
> Modify client code to use different semaphore for each broker url. Failure to 
> connect to one will not effect other connections (threads).
> Also, add ExceptionListener to Connection object to receive notification on 
> failures. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to