Please use the mailing list. MINA 2 has different mechanism than 1.x. If you experienced something similar, please file a JIRA issue.
[EMAIL PROTECTED] wrote:
> Hi Trustin,
>
> Has this fix been made in the MINA 1.1.x codebase? (I've seen this issue too.)
>
> Thanks,
> Seth
>
>
>
> Trustin Lee wrote:
>> It's because the dispose() operation is asynchronous. This means
>> shutting down the executor before the actual dispose operation occurs
>> will cause the rejection of the task. I will modify the dispose()
>> operation not to return too early to fix this bug. Sorry for your
>> inconvenience! For now you could wait for a few seconds with sleep()
>> :)
>>
>> Trustin
>>
>> On Nov 27, 2007 3:32 AM, Frederic Bregier <[EMAIL PROTECTED]> wrote:
>>> Hi all,
>>> in my test in the new trunk version, when I shutdown my client
>>> application
>>> using the code I previously done with dispose() added, I have
>>> the following error (not blocking) that appears some time, but not
>>> always.
>>> session.closeOnFlush().awaitUninterruptibly();
>>> if (ioBufferAllocator != null)
>>> ioBufferAllocator.dispose();
>>> ioBufferAllocator = null;
>>> if (executorChainFilter != null) {
>>> executorChainFilter.shutdownNow();
>>> executorChainFilter = null;
>>> }
>>> connector.dispose();
>>>
>>> It is not a big problem right now, except that I would like to know the
>>> reason, if any...
>>>
>>> Any idea ?
>>> 2007-11-25 12:43:20,489 WARN [NioProcessor-9]
>>> org.apache.mina.common.DefaultIoFilterChain [IoSessionLogger.java : 682]
>>> [localhost/127.0.0.1:8082] Unexpected exception from exceptionCaught
>>> handler.
>>> java.util.concurrent.RejectedExecutionException
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1759)
>>> at
>>> org.apache.mina.filter.executor.OrderedThreadPoolExecutor.rejectTask(OrderedThreadPoolExecutor.java:315)
>>> at
>>> org.apache.mina.filter.executor.OrderedThreadPoolExecutor.execute(OrderedThreadPoolExecutor.java:278)
>>> at
>>> org.apache.mina.filter.executor.ExecutorFilter.fireEvent(ExecutorFilter.java:316)
>>> at
>>> org.apache.mina.filter.executor.ExecutorFilter.exceptionCaught(ExecutorFilter.java:368)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.callNextExceptionCaught(DefaultIoFilterChain.java:442)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.access$4(DefaultIoFilterChain.java:439)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain$EntryImpl$1.exceptionCaught(DefaultIoFilterChain.java:803)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain$HeadFilter.exceptionCaught(DefaultIoFilterChain.java:592)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.callNextExceptionCaught(DefaultIoFilterChain.java:442)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.fireExceptionCaught(DefaultIoFilterChain.java:431)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:368)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.access$2(DefaultIoFilterChain.java:363)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain$EntryImpl$1.sessionClosed(DefaultIoFilterChain.java:793)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain$HeadFilter.sessionClosed(DefaultIoFilterChain.java:580)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:365)
>>> at
>>> org.apache.mina.common.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:360)
>>> at
>>> org.apache.mina.common.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:207)
>>> at
>>> org.apache.mina.common.AbstractPollingIoProcessor.removeNow(AbstractPollingIoProcessor.java:308)
>>> at
>>> org.apache.mina.common.AbstractPollingIoProcessor.remove(AbstractPollingIoProcessor.java:278)
>>> at
>>> org.apache.mina.common.AbstractPollingIoProcessor.access$9(AbstractPollingIoProcessor.java:266)
>>> at
>>> org.apache.mina.common.AbstractPollingIoProcessor$Worker.run(AbstractPollingIoProcessor.java:615)
>>> at
>>> org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
>>> at
>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
>>> at java.lang.Thread.run(Thread.java:619)
>>>
>>>
>>
>>
>> --
>> what we call human nature is actually human habit
>> --
>> http://gleamynode.net/
>> --
>> PGP Key ID: 0x0255ECA6
>>
>>
> Quoted from:
> http://www.nabble.com/Error-on-dispose%28%29-and-exit-of-the-application-tp13955625p13962138.html
>
--
Trustin Lee - Principal Software Engineer, JBoss, Red Hat
--
what we call human nature is actually human habit
--
http://gleamynode.net/
signature.asc
Description: OpenPGP digital signature
