Guy Itzhaki created DIRMINA-1145:
------------------------------------
Summary: Mina Server is losing messages
Key: DIRMINA-1145
URL: https://issues.apache.org/jira/browse/DIRMINA-1145
Project: MINA
Issue Type: Bug
Components: Core
Affects Versions: 2.1.4
Reporter: Guy Itzhaki
Attachments: mina_client_server.zip
During our tests we found that in some circumstances Mina server loses messages.
>From what we understand this happens when client opens connection and then
>sends message(s) and the server is still busy processing the sessionOpened
>event while the message the client sent went through the server’s filterChain.
Attached is a simple client and server that will help you reproduce the
problem, before you run it please perform the following steps:
*+Configuration:+*
# In order to reproduce the problem SSL filter *must* be defined (already
implemented in the attached example)
# Update the keystore and truststore files locations in *addSSLFilter()*
method in *MinaClient* and *MinaServer*
# Set server break points at:
# MinaServerHandler#sessionOpened
# MinaServerHandler#messageReceived
# org.apache.mina.core.filterchain.IoFilter.NextFilter#messageReceived
# Set client break points at:
# MinaClientHandler#sessionOpened
*Since this is a timing problem you need to run a debugger as described below:*
# Start server
# Start client
# At the client at *MinaClientHandler#sessionOpened* release the break point
# Release all break points +except+ server’s *MinaServerHandler#sessionOpened*
# After org.apache.mina.core.filterchain.IoFilter.NextFilter#messageReceived
completed to process all events, you can release
*MinaServerHandler#sessionOpened*
+*Expected result:*+
MinaServerHandler#messageReceived will be invoked with the message sent by the
client
*+Actual result:+*
MinaServerHandler#messageReceived is not invoked.
To use the example, add the following jars to your class path:
commons-lang3-3.9.jar
log4j-api-2.13.3.jar
log4j-core-2.13.3.jar
log4j-jcl-2.13.3.jar
mina-core-2.1.4.jar
slf4j-api-1.7.26.jar
spring-jcl-5.2.12.RELEASE.jar
The java we use is *AdoptJDK 11.0.8*
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]