[JBoss JIRA] Created: (JBESB-3195) Message loss in JBM due to exceptions
by Tamas Cserveny (JIRA)
Message loss in JBM due to exceptions
-------------------------------------
Key: JBESB-3195
URL: https://jira.jboss.org/jira/browse/JBESB-3195
Project: JBoss ESB
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Application Server
Affects Versions: 4.7 CP1
Environment: Name: JBoss ESB
Specification-Title: jbossesb-server-4.7
Specification-Version: 4.7
Specification-Vendor: JBoss
Implementation-Version: 4.7 November 20 2009
JBoss AS 4.2.3.GA
Reporter: Tamas Cserveny
Attachments: endlessloop.100ms.esb, endlessloop.1ms.esb
We created a little endless loop esb components to create a load test of JBossESB. This component picks up files from a directory and then puts it to a JBM queue which is bridged to another JBM queue which is then dumped to the input directory.
We kept this running for 7 days circulating 200x4kb files, the result is the following:
193 of them left in the loop. 7 messages were lost!
I got 7 of these log enties:
2010-02-26 16:35:36,403 ERROR [org.jboss.jms.client.container.ClientConsumer] Failed to deliver message
javax.jms.JMSException: There is no transaction with id LocalTx[vyra-0dga556g-1-ptgju46g-u8oycj-51zk6a]
at org.jboss.jms.tx.ResourceManager.addAck(ResourceManager.java:186)
at org.jboss.jms.client.container.SessionAspect.handlePreDeliver(SessionAspect.java:293)
at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect19.invoke(SessionAspect19.java)
at org.jboss.jms.client.delegate.ClientSessionDelegate$preDeliver_5548846795541436298.invokeNext(ClientSessionDelegate$preDeliver_5548846795541436298.java)
I attached two versions of the code. The difference is the bridge's "MaxBatchTime" property.
The above result was created with 100ms as setting.
In case this time is lowered to 1ms (we did it by a mistake) then an additional exception was seen:
2010-03-04 11:22:56,157 ERROR [org.jboss.messaging.util.ExceptionUtil] ConnectionEndpoint[c-r0tqed6g-1-imhqed6g-mbvwsd-er3k1l1] sendTransaction [9c3-lygred6g-1-imhqed6g-mbvwsd-er
3k1l1]
java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:372)
at java.util.AbstractList$Itr.next(AbstractList.java:343)
at org.jboss.jms.server.endpoint.ServerSessionEndpoint.acknowledgeTransactionally(ServerSessionEndpoint.java:1474)
at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.processTransaction(ServerConnectionEndpoint.java:810)
at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.sendTransaction(ServerConnectionEndpoint.java:473)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised.org$jboss$jms$server$endpoint$advised$ConnectionAdvised$sendTransaction$aop(ConnectionAdvised.java:101)
at org.jboss.jms.server.endpoint.advised.ConnectionAdvised$sendTransaction_N3268650789275322226.invokeNext(ConnectionAdvised$sendTransaction_N3268650789275322226.java)
at org.jboss.jms.server.container.SecurityAspect.handleSendTransaction(SecurityAspect.java:195)
Both exceptions can be reproduced easily with the 1ms version.
It seems that there is a race condition in JBM or JBossESB.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months
[JBoss JIRA] Created: (JBESB-3192) Need a RestProxy similar to SoapProxy but for REST use cases
by Aaron Pestel (JIRA)
Need a RestProxy similar to SoapProxy but for REST use cases
------------------------------------------------------------
Key: JBESB-3192
URL: https://jira.jboss.org/jira/browse/JBESB-3192
Project: JBoss ESB
Issue Type: Feature Request
Security Level: Public (Everyone can see)
Components: Web Services
Affects Versions: 4.7 CP1
Environment: SOA-P 5.0
Reporter: Aaron Pestel
We need a RestProxy that is logically similar to the SoapProxy. The use case is that a REST request comes in through the http-gateway, is potentially transformed via XSLT or some other mechanism (see JBESB-3191), and then can be routed to an external REST service (like a servlet on some other server).
Ideally, the RestProxy will take as much data from the HttpRequest XML in the ESB message as possible so that things like HTTP Method, URI, and maybe even host/port do not have to be specified on the RestProxy action, but can rather be dynamically specified by having them set in the ESB message (potentially by a previous transformation action).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 10 months