You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Konrad Podloucky (JIRA)" <ji...@apache.org> on 2008/06/03 14:32:00 UTC

[jira] Created: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
---------------------------------------------------------------------------

                 Key: AMQ-1763
                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.1.0
         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
            Reporter: Konrad Podloucky
         Attachments: test.xml, TestConsumer.java, TestProducer.java

The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:

ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
        at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
        at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
        at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
        at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
        at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
        at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
        at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
        at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
        at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
        at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
        at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
        at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
        at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
        at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
        at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
        at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
        at java.lang.Thread.run(Thread.java:619)

Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Konrad Podloucky (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43524#action_43524 ] 

Konrad Podloucky commented on AMQ-1763:
---------------------------------------

Just verified this problem with the broker running on Java(TM) SE Runtime Environment 1.6.0_06 (Sun) on SuSE Enterprise Linux.

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>         Attachments: test.xml, TestConsumer.java, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52586#action_52586 ] 

Mark Gellings commented on AMQ-1763:
------------------------------------

Any reason why this issue can't get resolved in version 5.3?  Virtual Topics are a documented feature of ActiveMQ.

http://activemq.apache.org/virtual-destinations.html 

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52748#action_52748 ] 

Mark Gellings commented on AMQ-1763:
------------------------------------

Hey Gary.

Thanks for helping out on this issue.  I looked at your code and it looks like it should be replicating the problem and failing.

Since it isn't, do you think you could try running the code the reporter attached.  I'm thinking if you run the producer once and then the consumer messages will come through as expected.  Then if you stop and run the consumer a second time the same messages will be redelivered.  This forsurely replicates the problem when using the ActiveMQ NMS framework.

If you could do this that would be great because maybe we are missing something in the unit test.

I think if you run the reporters producer/consumer and everything works correctly then it's safe to assume this is an issue with the ActiveMQ NMS framework.

-Regards

PS Sorry about the previous comments.  Looks like auto-reply can be a nuisance.  Especially if you aren't aware of it.

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52747#action_52747 ] 

Mark Gellings commented on AMQ-1763:
------------------------------------

Your auto-reply somehow got added as a comment to this JIRA issue.

https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52743#action_52743 

Weird...





> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Tom McCubbin (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=48903#action_48903 ] 

Tom McCubbin commented on AMQ-1763:
-----------------------------------

Can I do anything to help this issue along...I am experiencing the same problem and I would be happy to dig in and do some fixin'...

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.3.0
>
>         Attachments: test.xml, TestConsumer.java, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52604#action_52604 ] 

Gary Tully commented on AMQ-1763:
---------------------------------

There is an existing test case on trunk VirtualTopicPubSubTest  - http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/test/java/org/apache/activemq/broker/virtual/VirtualTopicPubSubTest.java?view=annotate

I modified it to use client ack but it does not show the behavior above. 

If that test (or one like) could be extended or replicated to show the problem it would speed up the process of getting a resolution.

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Gary Tully (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52743#action_52743 ] 

Gary Tully commented on AMQ-1763:
---------------------------------

mark, i applied ur changes and refactored a bit more to use separate connections for each consumer, but to no avail. the test still works. Cannot do much with this till we get a failing test case. I cannot see any real difference between the test classes from the original reporter and the current test case on trunk.
latest test is in r792220


> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mark Gellings updated AMQ-1763:
-------------------------------

    Attachment: testPatch.patch

patch to apply to test class to try and replicate message redelivery problem with virtual topics.

> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Chad Jones (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52745#action_52745 ] 

Chad Jones commented on AMQ-1763:
---------------------------------

I am out of the office until Thursday, July 9th. Please call the reference line at 414-566-6740 if you need immediate assistance.


> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52586#action_52586 ] 

Mark Gellings edited comment on AMQ-1763 at 6/30/09 6:34 AM:
-------------------------------------------------------------

Any reason why this issue can't get resolved in version 5.3?  Virtual Topics are a documented feature of ActiveMQ.

http://activemq.apache.org/virtual-destinations.html 

The broker receives the same error with a transactional session on commit.  Here's a thread further discussing the problem:

http://www.nabble.com/uses-virtual-topic---and-ClientAcknowledge-to-submit-the-message-occured-probem-ts22486742.html#a24260251

      was (Author: magellings):
    Any reason why this issue can't get resolved in version 5.3?  Virtual Topics are a documented feature of ActiveMQ.

http://activemq.apache.org/virtual-destinations.html 
  
> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-1763) Acknowledgment of Messages consumed from VirtualTopic consumer queues fails

Posted by "Mark Gellings (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-1763?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52619#action_52619 ] 

Mark Gellings commented on AMQ-1763:
------------------------------------

Thanks for you effort and quick response to this Gary.

The reason the above test may be passing is because you are using the same connection when instantiating the consumers.

The issue is when a subsequent connection is made (or consumer is disposed) the messages get redelivered.  They do not get redelivered on the same connection.  The broker just spits out the error as mentioned in the original post of the reporter.  The next connection the broker redelivers the same messages.  The pattern repeats.

As you suggested, I've attached a patch (testPatch.patch) to extend this test and ConsumerBean to try and replicate the issue.  

I'm a .NET programmer so I have replicated the problem with ActiveMQ NMS similar to how the patch does.  So forgive me if there are any syntactical errors in the java code.  :(  The logic should be correct though and hopefully we can trigger the error.

If we can trigger it, fix it, and bump this issue to 5.3 that would be great!  :)

Please keep me informed on how it goes.

PS Also note the reporter attached the broker configuration and the test classes he used to trigger this error.



> Acknowledgment of Messages consumed from VirtualTopic consumer queues fails
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-1763
>                 URL: https://issues.apache.org/activemq/browse/AMQ-1763
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.1.0
>         Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_06-b02)
>            Reporter: Konrad Podloucky
>             Fix For: 5.4.0
>
>         Attachments: test.xml, TestConsumer.java, testPatch.patch, TestProducer.java
>
>
> The Message Broker throws an exception each time a client tries to acknowledge a message consumed from a  VirtualTopic consumer queue:
> ERROR Service                        - Async error occurred: java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
> java.lang.IllegalArgumentException: The subscription does not exist: ID:seautpc271-1314-1212495185267-0:0:1:1
>         at org.apache.activemq.broker.region.AbstractRegion.acknowledge(AbstractRegion.java:357)
>         at org.apache.activemq.broker.region.RegionBroker.acknowledge(RegionBroker.java:470)
>         at org.apache.activemq.broker.TransactionBroker.acknowledge(TransactionBroker.java:194)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.BrokerFilter.acknowledge(BrokerFilter.java:73)
>         at org.apache.activemq.broker.MutableBrokerFilter.acknowledge(MutableBrokerFilter.java:84)
>         at org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:443)
>         at org.apache.activemq.command.MessageAck.visit(MessageAck.java:196)
>         at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:292)
>         at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
>         at org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:68)
>         at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:143)
>         at org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:206)
>         at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:84)
>         at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:196)
>         at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:183)
>         at java.lang.Thread.run(Thread.java:619)
> Consequently the message gets re-delivered as soon as the client connects to the queue again (and fails again on aknowledgement). Strangely enough the subscription mentioned in the exception is visible in the JMX console. I can reproduce this error every time I try to consume from VirtualTopic consumer queues.
> I have attached the broker configuration (which is rather minimal) and the test classes I used to trigger this error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.