[
https://issues.apache.org/jira/browse/QPID-1770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12689658#action_12689658
]
Jeff Stein edited comment on QPID-1770 at 3/26/09 2:12 PM:
-----------------------------------------------------------
I've downloaded trunk, and while I am seeing the new, fixed exceptions, the
timing seems off. If the message that exceeds the queue size is message number
N, the exception appears to only get thrown when I send message number N+1.
For example, say queue limit is 100k, and the queue is current 99k. When I
send message N of 2k, no exception is thrown, even though it has exceed the
queue size limit and the message is rejected by the queue. Then, when I send
the next message (N+1) of 2k, the exception is thrown.
In contrast, the Python client seems to throw the exception at message number
N, which seems more intuitive to me.
Is this a bug in trunk?
was (Author: jmstein):
I've downloaded trunk, and while I am seeing exceptions, the timing seems
off. If the message that exceeds the queue size is message number N, the
exception appears to only get thrown when I send message number N+1. For
example, say queue limit is 100k, and the queue is current 99k. When I send
message N of 2k, no exception is thrown, even though it has exceed the queue
size limit and the message is rejected by the queue. Then, when I send the
next message (N+1) of 2k, the exception is thrown.
In contrast, the Python client seems to throw the exception at message number
N, which seems more intuitive to me.
Is this a bug in trunk?
> JMS: No useful exception thrown when message is sent to full queue
> ------------------------------------------------------------------
>
> Key: QPID-1770
> URL: https://issues.apache.org/jira/browse/QPID-1770
> Project: Qpid
> Issue Type: Bug
> Components: Java Client
> Affects Versions: M4
> Environment: Redhat with C++ broker
> Reporter: Jeff Stein
> Assignee: Rajith Attapattu
> Priority: Critical
> Fix For: 0.5
>
>
> In JMS, when a message is sent when a queue is already at its maximum size,
> nothing happens for 60 seconds. The program just hangs there. Then,
> suddenly, these two exceptions are thrown:
> org.apache.qpid.transport.SessionException: timed out waiting for session to
> become open (state=DETACHED)
> at org.apache.qpid.transport.Session.invoke(Session.java:442)
> at
> org.apache.qpid.transport.SessionInvoker.messageTransfer(SessionInvoker.java:96)
> at
> org.apache.qpid.client.BasicMessageProducer_0_10.sendMessage(BasicMessageProducer_0_10.java:160)
> at
> org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:465)
> at
> org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:420)
> at
> org.apache.qpid.client.BasicMessageProducer.send(BasicMessageProducer.java:289)
> at Producer.runTest(Producer.java:135)
> at Producer.main(Producer.java:64)
> Producer: Caught an Exception: javax.jms.JMSException: Exception when sending
> message
> javax.jms.JMSException: Exception when sending message
> at
> org.apache.qpid.client.BasicMessageProducer_0_10.sendMessage(BasicMessageProducer_0_10.java:173)
> at
> org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:465)
> at
> org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:420)
> at
> org.apache.qpid.client.BasicMessageProducer.send(BasicMessageProducer.java:289)
> at Producer.runTest(Producer.java:135)
> at Producer.main(Producer.java:64)
> This is in contrast to, for example, a Python qpid producer, which will throw
> an exception as soon as the queue is full, and it will be very specific about
> the problem, telling you the queue is too full, which message overfilled it,
> etc.
> I tested this using a hacked up version of the direct producer/consumer JMS
> example. Just run the producer (without the consumer running) long enough
> with large enough messages so that it will reach the maximum queue size, and
> you should be able to see it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]