You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Antsa <ad...@teamware.com> on 2009/03/19 08:26:09 UTC

Message dispatch stops after changing subscription selectors

Using ActiveMQ 5.2.0, I have a junit test where I make a durable subscription
to a topic with a selector

  String selector = "TD_A_ALARM_TYPE = '0'";
  consumer = session.createDurableSubscriber((Topic)destination,
consumerName, selector, false);

I get messages where that property is specified.  If I change it to   
"TD_A_ALARM_TYPE = '1'"; I no longer get messages - as expected.  I then
change it back to 0 again, but message delivery does not start again when
new messages arrive.  I created 2 new subscribers, and both receive new
messages.  JMX shows the EnqueueCounter increment for all 3 subscribers, but
only the two later ones get the messages.  The modified one seems to get in
a stuck state.

When a new message arrives, I get these log messages

2009-03-19 18:18:46,843 DEBUG[Aconcagua-pool-1-thread-6]:
org.apache.activemq.ActiveMQSession [Aconcagua:6] -
ID:aconcagua-2749-1237445612265-2:0:6 sending message: ActiveMQTextMessage
{commandId = 0, responseRequired = false, messageId =
ID:aconcagua-2749-1237445612265-2:0:6:1:1, originalDestination = null,
originalTransactionId = null, producerId =
ID:aconcagua-2749-1237445612265-2:0:6:1, destination =
topic://directory.user.changepassword, transactionId =
TX:ID:aconcagua-2749-1237445612265-2:0:6, expiration = 0, timestamp =
1237447126843, arrival = 0, brokerInTime = 0, brokerOutTime = 0,
correlationId = null, replyTo = null, persistent = true, type = null,
priority = 4, groupID = null, groupSequence = 0, targetConsumerId = null,
compressed = false, userID = null, content = null, marshalledProperties =
null, dataStructure = null, redeliveryCounter = 0, size = 0, properties =
{id=VBEAAAAAAUgATwAAZAABIfRXAeRU,
TD_A_ISSUER_DIRECTORY=VDUAAAAAAAAAAQABZAABIfRXAeRU, created=Thu Mar 19
18:18:27 EST 2009, TD_A_ALARM_TYPE=0, type=19}, readOnlyProperties = true,
readOnlyBody = true, droppable = false, text = <alarm
id="VBEAAAAAAUgATwAAZAABIfRXAeRU"><cr...M></alarm>}
2009-03-19 18:18:46,843 DEBUG[Aconcagua-pool-1-thread-6]:
org.apache.activemq.ActiveMQSession [Aconcagua:6] -
ID:aconcagua-2749-1237445612265-2:0:6 Transaction Commit
2009-03-19 18:18:46,859 DEBUG[VMTransport]:
org.apache.activemq.store.amq.AMQMessageStore [null] - Journalled transacted
message add for: ID:aconcagua-2749-1237445612265-2:0:6:1:1, at: offset =
16159,  file = 1, size = 1339, type = 1
2009-03-19 18:18:46,859 DEBUG[VMTransport]:
org.apache.activemq.store.amq.AMQMessageStore [null] - Transacted message
add commit for: ID:aconcagua-2749-1237445612265-2:0:6:1:1, at: offset =
16159, file = 1, size = 1339, type = 1
2009-03-19 18:18:46,859 DEBUG[Persistence Adaptor Task]:
org.apache.activemq.store.amq.AMQMessageStore [null] - Doing batch update...
adding: 1 removing: 0
2009-03-19 18:18:46,859 DEBUG[Persistence Adaptor Task]:
org.apache.activemq.store.amq.AMQMessageStore [null] - Batch update done.
2009-03-19 18:18:46,859 ERROR[VMTransport]:
org.apache.activemq.store.amq.RecoveryListenerAdapter [null] - Message id
ID:aconcagua-3514-1237440144687-2:0:3:1:1 could not be recovered from the
data store - already dispatched
...

Any ideas?
Antony


-- 
View this message in context: http://www.nabble.com/Message-dispatch-stops-after-changing-subscription-selectors-tp22594879p22594879.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.