Hi Christoph,

have you tried with this patch ? :


diff --git
a/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
b/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
index 50ebd4e..575b2f4 100644
---
a/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
+++
b/mina-core/src/main/java/org/apache/mina/core/polling/AbstractPollingIoProcessor.java
@@ -695,8 +695,9 @@
                         for (Iterator<S> i = allSessions(); i.hasNext();) {
                             IoSession session = i.next();
 
+                            scheduleRemove((S) session);
+
                             if (session.isActive()) {
-                                scheduleRemove((S) session);
                                 hasKeys = true;
                             }
                         }


Le 16/10/2017 à 14:41, Christoph John a écrit :
> Hi Emmanuel, Jonathan,
>
> thanks for your patches. Unfortunately neither of them does correct
> the problem I am facing.
> I'd suggest that I'll try to reproduce this with a MINA-based test
> first. Otherwise it is probably just guess-work.
>
> Thanks for your help and best regards,
> Chris.
>
>
> On 11/10/17 16:14, Jonathan Valliere wrote:
>> Basically my proposed patch moves the check dispose conditional into a
>> finally loop forcing it to run even if exceptions were caught.
>>
>> If the SSLFilter did something weird then it would be blocked on that
>> filter. What is happening is that the Processor is not dying as
>> requested.
>> That's why I think my patch ought to resolve the problem.
>>
>> On Wed, Oct 11, 2017 at 10:05 AM Emmanuel Lécharny <[email protected]>
>> wrote:
>>
>>>
>>> Le 11/10/2017 à 14:51, Christoph John a écrit :
>>>> Thanks, will try. Did this patch apply to 2.0.16? The line numbers do
>>>> not match. I have added it manually in line 1162 and removed the
>>>> statement from line 1164.
>>> It's for 2.0.17-SNAPSHOT, so you may have differences with 2.0.16, but
>>> minor.
>>>
>>> The idea here is to remove a session when it's i teh list of managed
>>> version, even if it's not valid (that might be a corner case when teh
>>> SSLFilter does not properly handle an exception and close the channel.
>>> Call it a workaround atm)
>>>
>>> -- 
>>> Emmanuel Lecharny
>>>
>>> Symas.com
>>> directory.apache.org
>>>
>>>
>

-- 
Emmanuel Lecharny

Symas.com
directory.apache.org

Reply via email to