[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-05-04 Thread Jonathan Valliere (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16833130#comment-16833130
 ] 

Jonathan Valliere commented on DIRMINA-1101:


[~elecharny] was this issue fixed already?  Seems like it was.

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-04 Thread JIRA


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16810236#comment-16810236
 ] 

Jörg Michelberger commented on DIRMINA-1101:


I have implements IoHandler on different serial, socket on vmpipe server
client implementations, but i change some to extends IoHandlerAdapter and
implement the missing method on the others. Method for signaling half close
connestions was introduced between 2.0.7 and now. So I need to code that
anyway. Why not direct jump to 2.1.x line would be possible.

Emmanuel Lecharny (JIRA)  schrieb am Mi., 3. Apr. 2019,



> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-03 Thread Emmanuel Lecharny (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16808774#comment-16808774
 ] 

Emmanuel Lecharny commented on DIRMINA-1101:


As Jonathan said, the risk is that it breaks something in existing use code 
base, something I really can't guarantee with a modified 2.0.X.

OTOH, 2.1 is really close to 2.0, and there should be no impact on your code if 
you switch to this version. All in all, we just added an event, which is 
handled by default in the \{IoHandlerAdapter}, so your \{IoHandler} 
implementation should not be hit unless you were using the SSL notification 
(check that: [http://mina.apache.org/mina-project/2.1-vs-2.0.html).]

Is that the case ?

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-03 Thread Jonathan Valliere (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16808743#comment-16808743
 ] 

Jonathan Valliere commented on DIRMINA-1101:


There is some concern that the changes may break some projects built with Mina. 
(Which is the reason why 2.1.X was added because the SSL changes broke LDAP)  
Ultimately, I'm going to defer to Emmanuel on that one.

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-03 Thread JIRA


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16808737#comment-16808737
 ] 

Jörg Michelberger commented on DIRMINA-1101:


Hi,
a 2.0.x would help me a lot.
Thanks
Joerg

Jonathan Valliere (JIRA)  schrieb am Mi., 3. Apr. 2019,



> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-03 Thread Jonathan Valliere (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16808732#comment-16808732
 ] 

Jonathan Valliere commented on DIRMINA-1101:


The branch is pretty much finalized; I think Emmanuel is done.  We went over it 
on Monday.  I'm not sure whether it will be back ported to 2.0.X or not.  That 
is still up to debate.

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-04-03 Thread Greg Thomas (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16808721#comment-16808721
 ] 

Greg Thomas commented on DIRMINA-1101:
--

{quote}There is definitively a plan to get a 2.1.1 release - and probably a 
2.0.21 release too - asap.
{quote}
Do you have any timescales of when this might happen?

Thanks again.

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-03-26 Thread Emmanuel Lecharny (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16801813#comment-16801813
 ] 

Emmanuel Lecharny commented on DIRMINA-1101:


There is definitively a plan to get a 2.1.1 release - and probably a 2.0.21 
release too - asap.

This is a serious bug.

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-03-26 Thread Greg Thomas (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16801760#comment-16801760
 ] 

Greg Thomas commented on DIRMINA-1101:
--

Good news; MINA 2.1 seems sufficiently API compatible with 2.0 that no changes 
were required to update to 2.1.0 - the same test reproduced the same original 
issue.

Even better news; your mina-write-request branch fixes the problem we were 
seeing with the Compression Filter. Are there plans to publish a 2.1.1-SNAPSHOT 
anywhere (or even better, release 2.1.1!) so we can more easily carry out some 
more long running tests?

Thanks for the fix!

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-03-26 Thread Emmanuel Lecharny (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16801547#comment-16801547
 ] 

Emmanuel Lecharny commented on DIRMINA-1101:


Hi Guus,

this is a complex bug. The way we handle written message is, to say the least, 
convoluted. I w InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Assignee: Emmanuel Lecharny
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Commented] (DIRMINA-1101) InvalidMarkException on session.write when using CompressionFilter.

2019-03-21 Thread Guus der Kinderen (JIRA)


[ 
https://issues.apache.org/jira/browse/DIRMINA-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16798213#comment-16798213
 ] 

Guus der Kinderen commented on DIRMINA-1101:


This issue is also being discussed in the mailing list thread that starts here: 
[http://mail-archives.apache.org/mod_mbox/mina-dev/201903.mbox/%3CCA+GjePVToJ1hzFDTy50BwpEY1AFjPea+ETKe=leoohbwfre...@mail.gmail.com%3E]

> InvalidMarkException on session.write when using CompressionFilter.
> ---
>
> Key: DIRMINA-1101
> URL: https://issues.apache.org/jira/browse/DIRMINA-1101
> Project: MINA
>  Issue Type: Bug
>Affects Versions: 2.0.20
>Reporter: Jörg Michelberger
>Priority: Major
>
> I'm updated from a MINA 2.0.7 to the 2.0.20 and am a user of 
> CompressionFilter. Writing of Messages fails with a InvalidMarkException.
> Reproducible Test is:
>  * Copy MINA Core Test org.apache.mina.core.service.AbstractIoServiceTest to 
> MINA Compression Filter org.apache.mina.filter.compression Test Packages 
> package.
>  * Adapt package statement to org.apache.mina.filter.compression.
>  * Add Compression to acceptor and connector
>  *     acceptor.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      acceptor.getFilterChain().addLast("logger", new LoggingFilter());
>      acceptor.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  *     connector.getFilterChain().addLast("compression", new 
> CompressionFilter());
>      connector.getFilterChain().addLast("logger", new LoggingFilter());
>      connector.getFilterChain().addLast("codec",
>      new ProtocolCodecFilter(new 
> TextLineCodecFactory(StandardCharsets.UTF_8)));
>  * Set a Breakpoint to java.nio.Buffer.reset() method, where the 
> InvalidMarkException is thrown.
>  * Run Debug Testfile on 
> org.apache.mina.filter.compression.AbstractIoServiceTest 
> After the Exception the session is immediatelly scheduled for disconnect.
> It seems that there is a discrepancy between the mark() and reset() calls on 
> the underlaying Buffer. In case of compression, a Buffer with the compressed 
> content is created and is wrapped with the original Buffer in a 
> FilteredWriteRequest, because CompressionFilter is a WriteRequestFilter. This 
> is in WriteRequestFilter.filterWrite()
> In DefaultIoFilterChain$HeadFilter.filterWrite() is then the mark() call, 
> which is done on the compressed Buffer.
> In AbstractPollingIoProcessor.writeBuffer() is the reset() call, which is in 
> this case done on the original Buffer, leading to the Exception.
> It seems that the change at date 16.02.2016
> SHA-1: 44b58469f84ce991074cdc187b1c1f23b94cf445
> * Don't try to reset a message when it's not a IoBuffer
> which reassignes the buf before reset() is called broke it. The buf before 
> reassign looks much better as the right to reset() in this case.
>  
> {{java.nio.InvalidMarkException}}
>  {{    at java.nio.Buffer.reset(Buffer.java:306)}}
>  {{    at 
> org.apache.mina.core.buffer.AbstractIoBuffer.reset(AbstractIoBuffer.java:425)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.writeBuffer(AbstractPollingIoProcessor.java:1131)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flushNow(AbstractPollingIoProcessor.java:994)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.flush(AbstractPollingIoProcessor.java:921)}}
>  {{    at 
> org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:688)}}
>  {{    at 
> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)}}
>  {{    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)}}
>  {{    at java.lang.Thread.run(Thread.java:748)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)