temporalio/temporal
Task queue
A task queue is the user-facing FIFO of pending Workflow and Activity tasks that workers poll. It is owned by the Matching service, sharded into partitions, and queryable via worker-versioning rules.
| Aspect | Detail |
|---|---|
| Identity | (NamespaceID, TaskQueueName, TaskQueueType). Type is Workflow or Activity. |
| Owner | Each (name, partition) is owned by exactly one Matching host. |
| Partitioning | N partitions per queue (default 4); root partition is the parent of all children. |
| Storage | Tasks live in the persistence backend's task table; user data in task_queue_user_data. |
| Versioning | Worker-versioning rules attach via the user-data row. |
| Forwarding | Idle child partitions can forward tasks (or pollers) to their parent. |
Distinct from the per-shard "history task queues" inside History. Same word, different concepts.
Code references
- Partition manager:
service/matching/task_queue_partition_manager.go. - Backing storage:
service/matching/physical_task_queue_manager.go. - User data manager:
service/matching/user_data_manager.go. - Persistence:
common/persistence/task_manager.go.
Where to read more
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.