Overview
The storage of the Aurea Messenger (aka Sonic) brokers (both, primary and backup) used with Aurea Monitor (aka Actional) are growing rapidly. Specifically, the pubsub.odb file. This continues even after restoring the store of the broker.
It seems like Aurea Monitor is not consuming the messages on the durable subscriptions and messages keep piling up.
You have recently upgraded to version 12.0.
Solution
The rapid growth of pubsub.odb file for the Aurea Messenger (AM) broker can happen due to message backlog build-up on the durable subscription.
Aurea Monitor uses two durable subscriptions for notification and health check communication between Aurea Monitor Server (AMS) and Agent. When an Agent is disconnected (or removed), due to the nature of Aurea Messenger's durable subscription, the messages intended for that Agent will be kept in the backlog, till the Agent comes back online to process them. This results in the pubsub.odb file size increase, because this is the file storing those messages.
When you upgrade, the "new" agents will create new subscriptions. Hence the "removed" agents will never come back to read (and thus remove from the message queue) the messages intended for them. Resulting in huge pubsub.odb file size increase.
Reduce the Broker's storage size
The Broker's storage size can be reduced in two ways:
- Identify the Aurea Monitor related durable subscriptions and remove the unused subscriptions as described in the Aurea Messenger MQ Configuration and Management Guide, in the chapter Deleting Durable Subscriptions. After that, you will need to compact the pubsub.odb file using the compact utility tool provided with your Aurea Messenger in the MQ/bin/dbtool folder.
- Reinitialize the broker's storage - this is the cleanest solution because older subscriptions will be deleted and new subscriptions will be re-created automatically. The messages published on the subscriptions are for notification and health check so reinitializing the broker's storage doesn't affect the functioning of AMS and Agent. These messages are not critical and are sent frequently (every few minutes), so eventually, they will be resent.
Prevent growth of the Broker's storage
Follow the guidelines listed in the Aurea Messenger article about Why does the TopicDBSize keep growing? to prevent uncontrolled growth of the Broker's storage.
Use TTL on the subscriptions
One of the recommended options to prevent pubsub.odb growth is to use TTL (Time-To-Live) on the subscriptions. The Aurea Messenger provides a parameter to set a TTL on the subscription. After the expiration of the TTL, the messages will be removed, even if not read by the subscriber. In case an Agent is removed (or upgraded) this will result in the automatic removal of its subscription after the time set in TTL elapses.
To configure this TTL add -Dsonicsw.mf.durableSubscriptionTTL = 360000 to the Launcher profiles. TTL is configured in milliseconds, so this will result in 6 minutes of TTL for the durable subscription of the Agents.