[ https://issues.apache.org/jira/browse/AMQ-4277?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christopher L. Shannon updated AMQ-4277: ---------------------------------------- Fix Version/s: (was: 5.13.0) NEEDS_REVIEW > activemq-web - REST GET 204 > --------------------------- > > Key: AMQ-4277 > URL: https://issues.apache.org/jira/browse/AMQ-4277 > Project: ActiveMQ > Issue Type: Bug > Affects Versions: 5.7.0 > Environment: windows 7 and windows xp > Reporter: Helen Huang > Fix For: NEEDS_REVIEW > > Attachments: AMQ4277TestPatch.txt, RestTest.java > > > Using 5.7 REST API I can GET a message from a topic but if a new message is > POSTed to that same topic before the GET has been reissued (less than 20ms > behind the POST and using the same session as the previous GET) the GET will > timeout with a 204 and does not retrieve the message. This may be as designed > for topics (queues are not an option) but I am just looking for confirmation. > I assumed the first GET would have provided a topic subscription and the > broker would hold a topic message for which there is a subscriber for longer > than 20ms? This is not a stress test and is recreated with a simple producer > and a separate consumer usually within the first couple of message exchanges. > It has been noticed that when the topic message is POSTed without an > outstanding GET to receive it, the following exception is logged: > 2013-01-22 01:09:37,484 | DEBUG | Async client internal exception occurred > with no exception listener registered: java.lang.IllegalStateException: > DISPATCHED,initial | org.apache.activemq.ActiveMQConnection | ActiveMQ > Session Task-1 > java.lang.IllegalStateException: DISPATCHED,initial > at > org.eclipse.jetty.server.AsyncContinuation.dispatch(AsyncContinuation.java:408) > > at > org.eclipse.jetty.server.AsyncContinuation.resume(AsyncContinuation.java:815) > at > org.apache.activemq.web.MessageServlet$Listener.onMessageAvailable(MessageServlet.java:409) > > at > org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1343) > > at > org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:131) > > at > org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:202) > > at > org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:129) > > at > org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:47) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) > > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) > > at java.lang.Thread.run(Thread.java:722) > > Are there any configuration modifications available to have the topic > messages retained for at least 1 second? -- This message was sent by Atlassian JIRA (v6.3.4#6332)