Hi Hiram, I think that is related to the patch. I think it's probably related to changes I made to dispatcher pool creation and startup. It used to be that the dispatch threads were created in the pool's constructor, but now they aren't created until the dispatcher is started, so that subclasses can do any extra initialization in the constructor before the threads are created. So I think what's happening is that a flow controller is requesting dispatch before the pool has started completely. At least a temporary fix would be to start the dispatch pool immediately after construction.
Colin -----Original Message----- From: Hiram Chirino (JIRA) [mailto:[email protected]] Sent: Friday, February 20, 2009 6:48 AM To: [email protected] Subject: [jira] Commented: (AMQ-2129) Various Dispatcher improvements aimed at allowing for extensibility. [ https://issues.apache.org/activemq/browse/AMQ-2129?page=com.atlassian.jira.p lugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=49831#action_4 9831 ] Hiram Chirino commented on AMQ-2129: ------------------------------------ Seeing these now.. not 100% sure if ti's related to the patch: {code} RemoteConnection error: java.lang.IndexOutOfBoundsException: Index: 5, Size: 5 java.lang.IndexOutOfBoundsException: Index: 5, Size: 5 RemoteConnection error: java.lang.IndexOutOfBoundsException: Index: 6, Size: 5 at java.util.ArrayList.RangeCheck(ArrayList.java:546) at java.util.ArrayList.get(ArrayList.java:321) at org.apache.activemq.dispatch.AbstractPooledDispatcher.chooseDispatcher(Abstr actPooledDispatcher.java:132) at org.apache.activemq.dispatch.PriorityDispatcher$2$1.execute(PriorityDispatch er.java:89) at org.apache.activemq.flow.FlowController.checkUnblockSources(FlowController.j ava:424) at org.apache.activemq.flow.FlowController.dispatchOverflowQueue(FlowController .java:341) at org.apache.activemq.flow.FlowController.onUnthrottled(FlowController.java:30 0) at org.apache.activemq.flow.FlowController$1.onUnthrottled(FlowController.java: 83) RemoteConnection error: java.lang.IndexOutOfBoundsException: Index: 7, Size: 5 at org.apache.activemq.flow.AbstractLimiter.notifyUnThrottleListeners(AbstractL imiter.java:41) at org.apache.activemq.flow.SizeLimiter.remove(SizeLimiter.java:68) at org.apache.activemq.flow.RemoteConnection$WindowLimiter.remove(RemoteConnect ion.java:308) at org.apache.activemq.flow.RemoteConnection$WindowLimiter.onProtocolMessage(Re moteConnection.java:323) at org.apache.activemq.flow.RemoteConnection.onCommand(RemoteConnection.java:92 ) at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor. java:210) at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.ja va:84) at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:234) at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:216) at java.lang.Thread.run(Thread.java:613) {code} > Various Dispatcher improvements aimed at allowing for extensibility. > -------------------------------------------------------------------- > > Key: AMQ-2129 > URL: https://issues.apache.org/activemq/browse/AMQ-2129 > Project: ActiveMQ > Issue Type: Improvement > Affects Versions: incubation > Environment: n/a > Reporter: Colin MacNaughton > Fix For: incubation > > Attachments: AMQ-2129patch.txt > > > Refactoring of org.apache.activemq.dispatcher.* to make PriorityDispatcher easier to extend, as well as simplification of the PooledDispatcher api. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
