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 <greg.d.tho...@gmail.com> 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
>

Reply via email to