System Queues
Overview
System queues are internal queues created and used by SwiftMQ Swiftlets for router operations. They are identified by the $ character in their name. System queues should NOT be used by applications directly.
System Queue Reference
sys$queuemanager
- Swiftlet: sys_queuemanager
- Purpose: System management queue for the queue manager.
- Persistent: Yes
tmp$<sequence>-<startuptime>
- Swiftlet: sys_queuemanager
- Purpose: Temporary queues for request-reply patterns, using a sequence number and router startup timestamp.
- Persistent: No
sys$mqtt_sessionstore
- Swiftlet: sys_mqtt
- Purpose: Stores MQTT session state for clients.
- Persistent: Yes
routerdlq
- Swiftlet: sys_queuemanager
- Purpose: Dead letter queue for undeliverable messages.
- Persistent: Yes
unroutable
- Swiftlet: sys_routing
- Purpose: Queue for messages that cannot be routed.
- Persistent: Yes
rt$<destination-router>
- Swiftlet: sys_routing
- Purpose: Routing queue for store-and-forward to a specific remote router.
- Persistent: Yes
sys$prepared
- Swiftlet: sys_store
- Purpose: Queue for prepared transaction logs.
- Persistent: Yes
sys$xa_heuristic
- Swiftlet: sys_xa
- Purpose: Queue for storing heuristic outcomes of XA transactions.
- Persistent: Yes
sys$topic
- Swiftlet: sys_topicmanager
- Purpose: System queue for topic management.
- Persistent: Yes
tpc$<roottopic>
- Swiftlet: sys_topicmanager
- Purpose: Virtual queue for topic processing, serializes all subtopics under the same root topic.
- Persistent: No
clientId$durableName
- Swiftlet: sys_jms
- Purpose: Durable subscription queues for JMS clients.
- Persistent: Yes
sys$scheduler
- Swiftlet: sys_scheduler
- Purpose: Internal queue for the scheduler swiftlet.
- Persistent: Yes
swiftmqscheduler
- Swiftlet: sys_scheduler
- Purpose: Queue used by the scheduler swiftlet for scheduling tasks.
- Persistent: Yes
swiftmqmgmt
- Swiftlet: sys_mgmt
- Purpose: Queue for management operations.
- Persistent: Yes
streamlib
- Swiftlet: sys_streams
- Purpose: Queue for stream library deployment and management.
- Persistent: Yes
Queue Naming Conventions
System queues use the $ character in their names. Prefixes such as sys$ indicate system management queues. tmp$ indicates temporary queues, typically with a sequence and startup timestamp (e.g., tmp$