[
https://issues.apache.org/activemq/browse/SM-1666?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=48307#action_48307
]
Ryan Moquin commented on SM-1666:
---------------------------------
I think this issue comes from a change in the servicemix-jms that doesn't make
it as forgiving about not handling exchanges properly. I haven't had a chance
to go back to trying the new jms consumer endpoint, but my assumption is that
I'm not quite handling it properly. I think that is more than likely the only
problem. I've noticed if you don't mark exchanges done, you will clog up
Servicemix and will eventually not be able to process anything. The server
will just sit there frozen.
> Either servicemix-bean or servicemix-jms do not function properly.
> ------------------------------------------------------------------
>
> Key: SM-1666
> URL: https://issues.apache.org/activemq/browse/SM-1666
> Project: ServiceMix
> Issue Type: Bug
> Components: servicemix-bean, servicemix-jms
> Affects Versions: servicemix-bean-2008.01, servicemix-jms-2008.01, 3.3
> Environment: Windows XP, 4GB mem, jdk 1.6
> Reporter: Ryan Moquin
> Priority: Blocker
> Attachments: bridge-test.zip, using-new-jms-provider.JPG,
> using-old-jms-provider.JPG
>
>
> At some point during the 3.3 SNAPSHOT releases, our application stopped
> working. I did not have a chance to get a concrete case together to
> illustrate the problem until now. The test case is as follows (client sends
> 2000 JMS messages):
> Client JMS App -> JMS consumer -> servicemix-bean -> JMS provider
> The attached project works perfectly fine on a 3.3-SNAPSHOT release I have
> which appears to be from August 22nd. I've never been able to get this
> sequence to work since, it appears that the servicemix-bean SU will choke
> after a couple hundred messages and freeze up.
> When I run the described test on my August 22nd servicemix I will end up with
> 2000 messages having been queued and dequeued from the test.source topic and
> queued on the test.destination topic.
> When I run the described test on the 3.3 release, I will end up with 2000
> message enqueued and dispatched on the test.source topic, but only 576
> dequeued. It mentions the other 1474 are in flight.
> If I look at the threads, I see a bunch that are stuck waiting for an
> exchange (I'm guessing the servicemix-jms component never sends a reply?):
> Name: pool-flow.seda.servicemix-bean-thread-7
> State: WAITING on org.apache.servicemix.jbi.messaging.inonlyi...@158ef1f
> Total blocked: 0 Total waited: 1
> Stack trace:
> java.lang.Object.wait(Native Method)
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.waitForExchange(DeliveryChannelImpl.java:709)
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.sendSync(DeliveryChannelImpl.java:472)
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.sendSync(DeliveryChannelImpl.java:442)
> org.apache.servicemix.client.DefaultServiceMixClient.sendSync(DefaultServiceMixClient.java:156)
> test.BeanImpl.onMessageExchange(BeanImpl.java:96)
> org.apache.servicemix.bean.BeanEndpoint.onProviderExchange(BeanEndpoint.java:226)
> - locked org.apache.servicemix.bean.support.requ...@1b2a9cf
> org.apache.servicemix.bean.BeanEndpoint.process(BeanEndpoint.java:212)
> org.apache.servicemix.common.AsyncBaseLifeCycle.doProcess(AsyncBaseLifeCycle.java:600)
> org.apache.servicemix.common.AsyncBaseLifeCycle.processExchange(AsyncBaseLifeCycle.java:554)
> org.apache.servicemix.common.AsyncBaseLifeCycle.onMessageExchange(AsyncBaseLifeCycle.java:510)
> org.apache.servicemix.common.SyncLifeCycleWrapper.onMessageExchange(SyncLifeCycleWrapper.java:60)
> org.apache.servicemix.jbi.messaging.DeliveryChannelImpl.processInBound(DeliveryChannelImpl.java:620)
> org.apache.servicemix.jbi.nmr.flow.AbstractFlow.doRouting(AbstractFlow.java:172)
> org.apache.servicemix.jbi.nmr.flow.seda.SedaFlow.doRouting(SedaFlow.java:168)
> org.apache.servicemix.jbi.nmr.flow.seda.SedaQueue$1.run(SedaQueue.java:134)
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> java.lang.Thread.run(Thread.java:619)
> This seems to be a bug to me since it worked on that one 3.3-SNAPSHOT, but
> not on any since. The 3.3-SNAPSHOT I have is also before the renaming of
> components to 2008.01.
> I'll try a few other tests to see if I can narrow down any other cause since
> I would really like to get upgraded to the full release.
> Attached is a small project that will allow you to reproduce this issue, it's
> just a modification of the bridge sample with an extra SU in it. Here is all
> you need to do:
> 1. Build the attached project.
> 2. Deploy the built bridge-test-sa-3.3.zip
> 3. execute "java -jar test-jms-client-1.0.one-jar.jar" from the
> bridge-test/test-jms-client/target directory.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.