[
https://issues.apache.org/jira/browse/UIMA-3605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13949511#comment-13949511
]
Jerry Cwiklik commented on UIMA-3605:
-------------------------------------
The desire is to operate in an environment where the network glitch is possible.
No network profiling was done to confirm network overload.
At this point I am looking for a simple solution to the problem and it seems
like indefinite retry is a way to go. The UIMA-AS has already been designed to
recover from broker failures. When the broker is stopped or becomes unstable,
the UIMA-AS JMS Listeners go into auto-recovery mode. So the proposed approach
is consistent with what the UIMA-AS has been designed to do.
We are expecting a new switch so its possible that the new hardware will fix
the problem. Nevertheless, the UIMA-AS should expect problems and attempt to
recover.
> UIMA-AS gets "Wire format negotiation timeout" on connection.open()
> -------------------------------------------------------------------
>
> Key: UIMA-3605
> URL: https://issues.apache.org/jira/browse/UIMA-3605
> Project: UIMA
> Issue Type: Bug
> Components: Async Scaleout
> Affects Versions: 2.4.2AS
> Reporter: Jerry Cwiklik
> Assignee: Jerry Cwiklik
> Fix For: 2.5.0AS
>
>
> It appears that under heavy network load UIMA-AS is getting "Wire format
> negotiation timeout" Exception when opening a connection to a broker.
> The client side of AMQ is sending a frame containing its parameters to the
> server (broker). It reconciles clients params against its own and sends a
> reply back to the client. The reply apparently never reaches the client
> causing the timer to pop (default=10secs) and an exception is thrown.
> Attempt to extend the client timeout via
> wireFormat.maxInactivityDurationInitalDelay=60000 doesnt fix the problem. One
> possible explanation is that either the client wire format frame is not
> reaching the server or the server's reply doesnt reach the client. This may
> be due to a lost TCP packet.
> Since the low level amq wire negotiation doesnt offer retry, the UIMA-AS may
> need implement a higher level retry around the connection open() logic. It
> should capture generic JMSException and check the associated description for
> "wire format ..." problem. In such case, the connection should be closed and
> reopened.
--
This message was sent by Atlassian JIRA
(v6.2#6252)