I attached a stacktrace of the two threads, which are in a deadlock. Jon maybe right, when saying the write stack is threadsafe, the problem is, that simultaneously a read operation is going on, and both stacks use the same filters.
Thread "NioProcessor-2": flushScheduledEvents():308, SslHandler {org.apache.mina.filter.ssl} messageReceived():534, SslFilter {org.apache.mina.filter.ssl} callNextMessageReceived():542, DefaultIoFilterChain {org.apache.mina.core.filterchain} access$1300():48, DefaultIoFilterChain {org.apache.mina.core.filterchain} messageReceived():943, DefaultIoFilterChain$EntryImpl$1 {org.apache.mina.core.filterchain} messageReceived():153, ProxyFilter {org.apache.mina.proxy.filter} callNextMessageReceived():542, DefaultIoFilterChain {org.apache.mina.core.filterchain} access$1300():48, DefaultIoFilterChain {org.apache.mina.core.filterchain} messageReceived():943, DefaultIoFilterChain$EntryImpl$1 {org.apache.mina.core.filterchain} messageReceived():109, IoFilterAdapter {org.apache.mina.core.filterchain} callNextMessageReceived():542, DefaultIoFilterChain {org.apache.mina.core.filterchain} fireMessageReceived():535, DefaultIoFilterChain {org.apache.mina.core.filterchain} read():684, AbstractPollingIoProcessor {org.apache.mina.core.polling} process():638, AbstractPollingIoProcessor {org.apache.mina.core.polling} process():627, AbstractPollingIoProcessor {org.apache.mina.core.polling} access$600():68, AbstractPollingIoProcessor {org.apache.mina.core.polling} run():1096, AbstractPollingIoProcessor$Processor {org.apache.mina.core.polling} run():64, NamePreservingRunnable {org.apache.mina.util} runWorker():1142, ThreadPoolExecutor {java.util.concurrent} run():617, ThreadPoolExecutor$Worker {java.util.concurrent} run():745, Thread {java.lang} Thread "FixMessageProcessor(0)::ABFX": writeData():209, ProxyFilter {org.apache.mina.proxy.filter} filterWrite():192, ProxyFilter {org.apache.mina.proxy.filter} callPreviousFilterWrite():625, DefaultIoFilterChain {org.apache.mina.core.filterchain} access$1500():48, DefaultIoFilterChain {org.apache.mina.core.filterchain} filterWrite():953, DefaultIoFilterChain$EntryImpl$1 {org.apache.mina.core.filterchain} flushScheduledEvents():316, SslHandler {org.apache.mina.filter.ssl} filterWrite():653, SslFilter {org.apache.mina.filter.ssl} callPreviousFilterWrite():625, DefaultIoFilterChain {org.apache.mina.core.filterchain} access$1500():48, DefaultIoFilterChain {org.apache.mina.core.filterchain} filterWrite():953, DefaultIoFilterChain$EntryImpl$1 {org.apache.mina.core.filterchain} filterWrite():321, ProtocolCodecFilter {org.apache.mina.filter.codec} callPreviousFilterWrite():625, DefaultIoFilterChain {org.apache.mina.core.filterchain} access$1500():48, DefaultIoFilterChain {org.apache.mina.core.filterchain} filterWrite():953, DefaultIoFilterChain$EntryImpl$1 {org.apache.mina.core.filterchain} filterWrite():877, DefaultIoFilterChain$TailFilter {org.apache.mina.core.filterchain} callPreviousFilterWrite():625, DefaultIoFilterChain {org.apache.mina.core.filterchain} fireFilterWrite():618, DefaultIoFilterChain {org.apache.mina.core.filterchain} write():530, AbstractIoSession {org.apache.mina.core.session} write():474, AbstractIoSession {org.apache.mina.core.session} send():51, IoSessionResponder {quickfix.mina} send():2534, Session {quickfix} sendRaw():2466, Session {quickfix} send():2519, Session {quickfix} sendToTarget():635, Session {quickfix} sendMessageToTarget():529, FixApplication {de.digitec.d3.gateway.fix} subscribe():52, FixProducerHandle {de.digitec.d3.gateway.fix} subscribe():134, FixApplication {de.digitec.d3.gateway.fix} processMessage():288, FixMessageProcessor {de.digitec.d3.gateway.fix} run():245, FixMessageProcessor {de.digitec.d3.gateway.fix} run():878, FixApplication$MessageProcessorThread {de.digitec.d3.gateway.fix} DIGITEC GmbH Johannes-Brahms-Platz 1 20355 Hamburg Tel +49 40 23776-147 Fax +49 40 23776-200 www.DIGITEC.de ___________________________________________________________________________ DIGITEC GmbH EDV-Beratung, Soft- und Hardware Sitz Hamburg - HRB 288 18 Amtsgericht Hamburg Geschäftsführer: Hans-Joachim Hänel, Hans-Jürgen Joost Finanzamt Hamburg-Mitte, Steuer-Nr. 48/715/01586 - VAT-Nr. DE 118646977 WICHTIGER HINWEIS Die Kommunikation mit DIGITEC GmbH per Email dient nur dem Zweck der schnellen Information. Rechtsverbindliche Absprachen kommen über dieses Medium nicht zustande ! IMPORTANT NOTICE Communication with digitec GmbH via email is for quick information purposes only. This medium is not to be used for the exchange of legally binding statements !