Its my understanding that Read and Write operations are thread-safe and
should never cause deadlocks. (not sure why there are locks in those
filters)

Also, I don’t think SSL should be after Proxy.  You cannot initiate an SSL
session if you proxy the setup routine.  What is the goal in this setup?

Please send us the deadlock thread trace.(You can get it from VisualVM)

On Tue, Feb 9, 2016 at 11:59 AM, Norbert Irmer <n.ir...@digitec.de> wrote:

> Hello,
>
> I detected a deadlock when using Proxies and Ssl together.
>
> The SslFilter and the ProxyFilzter both have synchronized blocks, and when
> sending
> and receiving messages you get deadlocks.
>
> The SslFilter hangs in "sslLock.lock()" in
> "SslHandler.flushScheduledEvents()",
> while the ProxyFilter hangs in "synchronized(handler)" in
> "ProxyFilter.writeData".
>
> That sending and receiving messages with both filters simultaneously leads
> to a deadlock
> is clear, since both filters have locks and data flow direction is
> reversed when reading and writing:
>
> Read direction:   Socket  --> ProxyFilter   ---> SslFilter  -->
> FixProtocol   --> Application
> Write direction:  Socket <-- ProxyFilter  <---  SslFilter  <--
> FixProtocol  <-- Application
>
>
>
>

Reply via email to