I'm having the same exception using the destroy() method of
ExecutorFilter to shutdown the thread pool.
About documentation, I agree, MINA is great but I think it lacks a bit
on documentation.
Patrizio
David Rosenstrauch wrote:
David Rosenstrauch wrote:
Is this documented any more thoroughly anywhere - even just in a
mailing list thread? I'd like to understand a bit more about the
change and why it needs to be done this way. (i.e., why it needs to
be done as a filter as opposed to passing a thread pool into say the
NioProcessor, why an ordered thread is needed, etc.)
Thanks,
DR
Also, what's the proper way to shut down the OrderedThreadPoolExecutor?
I'm calling IoSession.close, adding a listener object onto the
CloseFuture, and then once the listener gets notified I'm calling
threadPool.shutdown, but Mina is throwing an exception (which I'm
assuming it shouldn't):
SEVERE: EXCEPTION :
java.util.concurrent.RejectedExecutionException
at
java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1760)
at
org.apache.mina.filter.executor.OrderedThreadPoolExecutor.rejectTask(OrderedThreadPoolExecutor.java:309)
at
org.apache.mina.filter.executor.OrderedThreadPoolExecutor.execute(OrderedThreadPoolExecutor.java:272)
at
org.apache.mina.filter.executor.ExecutorFilter.fireEvent(ExecutorFilter.java:535)
at
org.apache.mina.filter.executor.ExecutorFilter.sessionClosed(ExecutorFilter.java:571)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:395)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$900(DefaultIoFilterChain.java:48)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionClosed(DefaultIoFilterChain.java:787)
at
org.apache.mina.filter.codec.ProtocolCodecFilter.sessionClosed(ProtocolCodecFilter.java:363)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:395)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$900(DefaultIoFilterChain.java:48)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionClosed(DefaultIoFilterChain.java:787)
at
org.apache.mina.filter.logging.LoggingFilter.sessionClosed(LoggingFilter.java:215)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:395)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.access$900(DefaultIoFilterChain.java:48)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.sessionClosed(DefaultIoFilterChain.java:787)
at
org.apache.mina.core.filterchain.IoFilterAdapter.sessionClosed(IoFilterAdapter.java:96)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextSessionClosed(DefaultIoFilterChain.java:395)
at
org.apache.mina.core.filterchain.DefaultIoFilterChain.fireSessionClosed(DefaultIoFilterChain.java:388)
at
org.apache.mina.core.service.IoServiceListenerSupport.fireSessionDestroyed(IoServiceListenerSupport.java:211)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.removeNow(AbstractPollingIoProcessor.java:489)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.remove(AbstractPollingIoProcessor.java:458)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:57)
at
org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:872)
at
org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:65)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Thanks,
DR
--
*Patrizio Munzi*
Product Specialist
Viale Bruno Buozzi, 19 - 00197 Roma (Italy)
tel: +39 06 4543 3540
fax: +39 06 4543 3587
mobile: +39 393 7195 164
mail: [email protected] <mailto:[email protected]>
web: http://www.eris4.com <http://www.eris4.com/>
skype: eris4_munzi <skype:eris4_munzi?add>