You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Alex Rudyy (JIRA)" <ji...@apache.org> on 2013/06/02 23:47:19 UTC
[jira] [Created] (QPID-4901) [JMS AMQP 1.0] QueueBrowser hangs on
reaching end of the queues
Alex Rudyy created QPID-4901:
--------------------------------
Summary: [JMS AMQP 1.0] QueueBrowser hangs on reaching end of the queues
Key: QPID-4901
URL: https://issues.apache.org/jira/browse/QPID-4901
Project: Qpid
Issue Type: Bug
Components: Java Client
Affects Versions: 0.20, 0.22
Reporter: Alex Rudyy
QueueBrowser hangs on reaching an end of the queues. The following code reproduced the issue:
{code:java}
Queue queue = QueueImpl.createQueue("testQueue");
ConnectionFactory factory = new ConnectionFactoryImpl("localhost", 5672, "admin", "admin");
Connection producerConnection = factory.createConnection();
Session producerSession = producerConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
MessageProducer producer = producerSession.createProducer(queue);
producer.send(producerSession.createTextMessage("message 1"));
producer.send(producerSession.createTextMessage("message 2"));
producerConnection.close();
Connection browserConnection = factory.createConnection();
Session browserSession = browserConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
QueueBrowser browser = browserSession.createBrowser(queue);
@SuppressWarnings("rawtypes")
Enumeration enumeration = browser.getEnumeration();
while (enumeration.hasMoreElements()) // <--- hangs here
{
TextMessage msg = (TextMessage) enumeration.nextElement();
System.out.println("Browser received:" + msg.getText());
}
browserConnection.close();
{code}
Here is the stack trace from the main thread:
{noformat}
"main" prio=10 tid=0x00007fc3c4008000 nid=0x1870 in Object.wait() [0x00007fc3ca3cb000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000ec3367b0> (a org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint)
at java.lang.Object.wait(Object.java:485)
at org.apache.qpid.amqp_1_0.client.Receiver.drainWait(Receiver.java:533)
- locked <0x00000000ec3367b0> (a org.apache.qpid.amqp_1_0.transport.ConnectionEndpoint)
at org.apache.qpid.amqp_1_0.jms.impl.QueueBrowserImpl$MessageEnumeration.hasMoreElements(QueueBrowserImpl.java:154)
at org.apache.qpid.test.QueueBrowserTest.main(QueueBrowserTest.java:38)
{noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org