karaf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexandre Gallice (JIRA)" <j...@apache.org>
Subject [jira] [Created] (KARAF-2880) jms:* commands don't consume messages
Date Wed, 02 Apr 2014 11:52:14 GMT
Alexandre Gallice created KARAF-2880:

             Summary: jms:* commands don't consume messages
                 Key: KARAF-2880
                 URL: https://issues.apache.org/jira/browse/KARAF-2880
             Project: Karaf
          Issue Type: Bug
          Components: karaf-shell
    Affects Versions: 3.0.0
         Environment: Windows 7 Professional, Karaf launched as command line
            Reporter: Alexandre Gallice

I 've downloaded Karaf 3.0.0, deployed it and setup a basic configuration.

I have created few jms connection factories targetting activemq instances in remote locations
(France to Germany).

All commands works in nominal scenarios except jms:consume & jms:move, and potentially
each command consuming messages.

I had a look at the code and I think the problem resides in the use of receiveNoWait in the
class org.apache.karaf.jms.internal.JmsServiceImpl.
message = consumer.receiveNoWait(); // present in move(...) && consume(...) comands

Indeed, I have already experienced situations where messages can't be completely prefetched
to the jms client internal queue between the call to connection.start(); and the call to receiveNoWait().
A blocking call with a timeout would correct, by default 5 seconds could be ok in my opinion.
Let's say:
message = consumer.receive(5000L);

This message was sent by Atlassian JIRA

View raw message