I’m trying to look it up in gitbox and it doesn’t show the ids. What was
the date / first few words of commit message?
On Tue, Mar 19, 2019 at 1:13 PM Greg Thomas <[email protected]>
wrote:
So just to clarify;
If we run against 2.0.14, connections using the CompressionFilter fail.
If I ...
$ git clone http://gitbox.apache.org/repos/asf/mina.git mina
$ cd mina
$ git checkout 2.0.14
$ git revert 44b58469f84ce991074cdc187b1c1f23b94cf445
$ mvn clean package
and use the JAR files from that, connections using the CompressionFilter
succeed.
So I'm pretty confident that commit
44b58469f84ce991074cdc187b1c1f23b94cf445 is the culprit. I just don't
understand the code well enough to be able to suggest why/how to fix it.
Greg
On Tue, 19 Mar 2019 at 14:39, Jonathan Valliere <[email protected]>
wrote:
Have you pulled a diff between 13 and 14 to try to narrow it down?
It’s
always possible that there is a concurrency problem with compression
filter
which is now exposed through other changes... like what we have with
SSL.
On Tue, Mar 19, 2019 at 8:33 AM Greg Thomas <[email protected]>
wrote:
Openfire - an XMPP server,
https://www.igniterealtime.org/projects/openfire/index.jsp - makes
heavy
use of Apache MINA for it's I/O.
One of the things it uses is the CompressionFilter - if clients
enable
the
Compression XMPP option.
We've recently updated to a newer version of MINA, and with no other
code
changes found that enabling compression (in XMPP clients) fails. I've
narrowed it down to changes between MINA 2.0.13 (where it works) and
2.0.14
through to 2.1.0 (where it doesn't) - with Openfire throwing the
following
stack trace:
java.nio.InvalidMarkException: null
at java.nio.Buffer.reset(Buffer.java:306) ~[?:1.8.0_162]
at
org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:424)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.writeBuffer(AbstractPollingIoProcessor.java:940)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.flushNow(AbstractPollingIoProcessor.java:840)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.flush(AbstractPollingIoProcessor.java:767)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$700(AbstractPollingIoProcessor.java:68)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1125)
~[mina-core-2.0.14.jar:?]
at
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
~[mina-core-2.0.14.jar:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
~[?:1.8.0_162]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
~[?:1.8.0_162]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_162]
Narrowing down even further the commit at
https://gitbox.apache.org/repos/asf?p=mina.git;a=commit;h=44b58469f84ce991074cdc187b1c1f23b94cf445
seems
to be the culprit.
At this point, I'm drawing a blank.
It's possible Openfire is using the CompressionFilter wrongly, which
was
being masked until the above commit.
It's possible the above commit doesn't do what was intended, but I
don't
pretend to understand what it is/should be doing.
It's possible I've got the wrong end of the stick, and it's something
else
between MINA 2.0.13 and 2.0.14 that changed that is causing the
problem.
But at this point, I don't know where to start, so would appreciate
any
pointers!
Thanks,
Greg
--
CONFIDENTIALITY NOTICE: The contents of this email message and any
attachments are intended solely for the addressee(s) and may contain
confidential and/or privileged information and may be legally protected
from disclosure.