System-Level Subscription Exception Configuration

This section provides information on how to enable or disable subscription exceptions for a Solace PubSub+ event broker.

When subscription exceptions are enabled, a leading "!" character in a queue topic or MQTT QoS-1 subscription (for example !a/b/c) indicates a subscription exception. Any messages published to a topic matching a subscription exception are discarded and not delivered to the queue. When subscription exceptions are disabled, a leading "!" character in a topic subscription is treated as a literal character.

Also, wildcard characters can be used in subscription exceptions in the same way as in topic subscriptions, see Wildcard Characters in Topic Subscriptions.

Subscription exceptions are not supported for the following use cases. In these instances, leading "!" characters are always treated as literal characters:

  • Direct Messaging subscriptions
  • MQTT QoS-0 topic subscriptions
  • ACL topic exceptions
  • PubSub+ Cache topics

Subscription exceptions are enabled by default. To disable or enable subscription exceptions, do the following:

  • To disable subscription exceptions, enter the following CONFIG command:
    solace(configure/system/topic-routing)# no subscription-exceptions [defer]
  • To enable subscription exceptions, enter the following CONFIG command:
    solace(configure/system/topic-routing)# subscription-exceptions [defer]

Where:

defer specifies to defer the change until the next event broker restart.

You must restart the event broker before changes take effect. If you do not specify the defer keyword, you are immediately prompted to restart the event broker.

Config-Sync does not automatically synchronize this property. Therefore, if the event broker is being used in a high-availability (HA) pair or in a replicated site, you must manually configure the property on each mate event broker.