diff --git a/openapi/openapiv2.json b/openapi/openapiv2.json index dfaa2618c..47f5cc86f 100644 --- a/openapi/openapiv2.json +++ b/openapi/openapiv2.json @@ -1895,14 +1895,15 @@ }, { "name": "taskQueue.kind", - "description": "Default: TASK_QUEUE_KIND_NORMAL.\n\n - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities.", + "description": "Default: TASK_QUEUE_KIND_NORMAL.\n\n - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities.\n - TASK_QUEUE_KIND_WORKER_COMMANDS: A worker-commands task queue is used for server-to-worker communication (e.g. activity\ncancellations). These queues are ephemeral and per-worker-process — they exist only for\nthe lifetime of the worker process. Used with TASK_QUEUE_TYPE_NEXUS and polled via\nPollNexusTaskQueue.", "in": "query", "required": false, "type": "string", "enum": [ "TASK_QUEUE_KIND_UNSPECIFIED", "TASK_QUEUE_KIND_NORMAL", - "TASK_QUEUE_KIND_STICKY" + "TASK_QUEUE_KIND_STICKY", + "TASK_QUEUE_KIND_WORKER_COMMANDS" ], "default": "TASK_QUEUE_KIND_UNSPECIFIED" }, @@ -6632,14 +6633,15 @@ }, { "name": "taskQueue.kind", - "description": "Default: TASK_QUEUE_KIND_NORMAL.\n\n - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities.", + "description": "Default: TASK_QUEUE_KIND_NORMAL.\n\n - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities.\n - TASK_QUEUE_KIND_WORKER_COMMANDS: A worker-commands task queue is used for server-to-worker communication (e.g. activity\ncancellations). These queues are ephemeral and per-worker-process — they exist only for\nthe lifetime of the worker process. Used with TASK_QUEUE_TYPE_NEXUS and polled via\nPollNexusTaskQueue.", "in": "query", "required": false, "type": "string", "enum": [ "TASK_QUEUE_KIND_UNSPECIFIED", "TASK_QUEUE_KIND_NORMAL", - "TASK_QUEUE_KIND_STICKY" + "TASK_QUEUE_KIND_STICKY", + "TASK_QUEUE_KIND_WORKER_COMMANDS" ], "default": "TASK_QUEUE_KIND_UNSPECIFIED" }, @@ -16861,10 +16863,11 @@ "enum": [ "TASK_QUEUE_KIND_UNSPECIFIED", "TASK_QUEUE_KIND_NORMAL", - "TASK_QUEUE_KIND_STICKY" + "TASK_QUEUE_KIND_STICKY", + "TASK_QUEUE_KIND_WORKER_COMMANDS" ], "default": "TASK_QUEUE_KIND_UNSPECIFIED", - "description": " - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities." + "description": " - TASK_QUEUE_KIND_UNSPECIFIED: Tasks from any non workflow task may be unspecified.\n\nTask queue kind is used to differentiate whether a workflow task queue is sticky or \nnormal. If a task is not a workflow task, Task queue kind will sometimes be \nunspecified.\n - TASK_QUEUE_KIND_NORMAL: Tasks from a normal workflow task queue always include complete workflow history\n\nThe task queue specified by the user is always a normal task queue. There can be as many\nworkers as desired for a single normal task queue. All those workers may pick up tasks from\nthat queue.\n - TASK_QUEUE_KIND_STICKY: A sticky queue only includes new history since the last workflow task, and they are\nper-worker.\n\nSticky queues are created dynamically by each worker during their start up. They only exist\nfor the lifetime of the worker process. Tasks in a sticky task queue are only available to\nthe worker that created the sticky queue.\n\nSticky queues are only for workflow tasks. There are no sticky task queues for activities.\n - TASK_QUEUE_KIND_WORKER_COMMANDS: A worker-commands task queue is used for server-to-worker communication (e.g. activity\ncancellations). These queues are ephemeral and per-worker-process — they exist only for\nthe lifetime of the worker process. Used with TASK_QUEUE_TYPE_NEXUS and polled via\nPollNexusTaskQueue." }, "v1TaskQueueReachability": { "type": "object", diff --git a/openapi/openapiv3.yaml b/openapi/openapiv3.yaml index fe637190c..0cfe7a0df 100644 --- a/openapi/openapiv3.yaml +++ b/openapi/openapiv3.yaml @@ -1812,6 +1812,7 @@ paths: - TASK_QUEUE_KIND_UNSPECIFIED - TASK_QUEUE_KIND_NORMAL - TASK_QUEUE_KIND_STICKY + - TASK_QUEUE_KIND_WORKER_COMMANDS type: string format: enum - name: taskQueue.normalName @@ -6046,6 +6047,7 @@ paths: - TASK_QUEUE_KIND_UNSPECIFIED - TASK_QUEUE_KIND_NORMAL - TASK_QUEUE_KIND_STICKY + - TASK_QUEUE_KIND_WORKER_COMMANDS type: string format: enum - name: taskQueue.normalName @@ -14787,6 +14789,7 @@ components: - TASK_QUEUE_KIND_UNSPECIFIED - TASK_QUEUE_KIND_NORMAL - TASK_QUEUE_KIND_STICKY + - TASK_QUEUE_KIND_WORKER_COMMANDS type: string description: 'Default: TASK_QUEUE_KIND_NORMAL.' format: enum diff --git a/temporal/api/enums/v1/task_queue.proto b/temporal/api/enums/v1/task_queue.proto index b54f8f18b..e583988fe 100644 --- a/temporal/api/enums/v1/task_queue.proto +++ b/temporal/api/enums/v1/task_queue.proto @@ -31,6 +31,11 @@ enum TaskQueueKind { // // Sticky queues are only for workflow tasks. There are no sticky task queues for activities. TASK_QUEUE_KIND_STICKY = 2; + // A worker-commands task queue is used for server-to-worker communication (e.g. activity + // cancellations). These queues are ephemeral and per-worker-process — they exist only for + // the lifetime of the worker process. Used with TASK_QUEUE_TYPE_NEXUS and polled via + // PollNexusTaskQueue. + TASK_QUEUE_KIND_WORKER_COMMANDS = 3; } enum TaskQueueType {