-
Notifications
You must be signed in to change notification settings - Fork 59
Merge next-server into main #856
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* The `temporal activity {pause,update-options}` support batch
operations through `--query`
* Consistently passing the `--identity` parameter to server requests
Improved developer experience, can batch these requests through a
visibility query instead of sending multiple requests
2. How was this tested:
New unit tests
3. Any docs updates needed?
Documentation updates are automatically generated with releases.
Not changing the actual default, just what is printed in the help output.
Closes #833 --------- Co-authored-by: Spencer Judge <[email protected]>
<!--- Note to EXTERNAL Contributors -->
<!-- Thanks for opening a PR!
If it is a significant code change, please **make sure there is an open
issue** for this.
We work best with you when we have accepted the idea first before you
code. -->
<!--- For ALL Contributors 👇 -->
## What was changed
+ Added a new `report-config` field in the describe command to retrieve
updated task queue configs if exists.
+ Implement display logic for config table along with truncation of
large update reasons or update identities.
**Note : These changes are only a part of the legacy mode of the
describeTaskQueueApi.**
```
./temporal task-queue describe \
--task-queue=test-display-queue \
--task-queue-type-legacy=activity \
-n=default \
--report-config \
--legacy-mode
```
Sample Response
```
./temporal task-queue describe \
--task-queue=hello-world \
--task-queue-type-legacy=activity \
-n=default \
--report-config \
--legacy-mode
Pollers:
Identity LastAccessTime RatePerSecond
Task Queue Configuration:
Note: Long content may be truncated. Use --output json for full details.
Setting Value Reason UpdatedBy UpdatedTime
Fairness Key Rate Limit Default 100 requests/second Fairness key test api-tester 2025-08-12 04:31:46
```
---
+ Added separate config Subcommand for getting/setting configs.
```
./temporal task-queue config --help
Manage Task Queue configuration:
temporal task-queue config [command] [options]
Available commands:
- get: Retrieve the current configuration for a task queue
- set: Update the configuration for a task queue
Usage:
temporal task-queue config [command]
Available Commands:
get Get Task Queue configuration
set Set Task Queue configuration
```
---
+ Get Subcommand
```
./temporal task-queue config get --help
Retrieve the current configuration for a Task Queue:
temporal task-queue config get \
--task-queue YourTaskQueue \
--task-queue-type activity
This command returns the current configuration including:
- Queue rate limit: The overall rate limit of the task queue.
This setting overrides the worker rate limit if set.
Unless modified, this is the system-defined rate limit.
- Fairness key rate limit defaults: Default rate limits for fairness keys.
If set, each individual fairness key will be limited to this rate,
scaled by the weight of the fairness key.
Usage:
temporal task-queue config get [flags]
```
Sample Response
```
./temporal task-queue config get \
--task-queue=hello-world \
--task-queue-type=activity \
--namespace=default
Note: Long content may be truncated. Use --output json for full details.
Setting Value Reason UpdatedBy UpdatedTime
Fairness Key Rate Limit Default 100 requests/second Fairness key test api-tester 2025-08-12 04:31:46
```
---
+ Set Subcommand
```
./temporal task-queue config set --help
Update a Task Queue's overall rate limit and the default rate limit for all fairness keys:
temporal task-queue config set \
--task-queue YourTaskQueue \
--task-queue-type activity \
--namespace YourNamespace \
--queue-rps-limit <requests_per_second:float> \
--queue-rps-limit-reason <reason_string> \
--fairness-key-rps-limit-default <requests_per_second:float> \
--fairness-key-rps-limit-reason <reason_string>
This command supports updating:
- Queue rate limits: Controls the overall rate limit of the task queue.
This setting overrides the worker rate limit if set.
Unless modified, this is the system-defined rate limit.
- Fairness key rate limit defaults: Sets default rate limits for fairness keys.
If set, each individual fairness key will be limited to this rate,
scaled by the weight of the fairness key.
To unset a rate limit, pass in 'default', for example: --queue-rps-limit default
Usage:
temporal task-queue config set [flags]
Flags:
--fairness-key-rps-limit-default float|default Fairness key rate limit default in requests per second. Accepts a float; or 'default' to unset.
--fairness-key-rps-limit-reason string Reason for fairness key rate limit update.
-h, --help help for set
--queue-rps-limit float|default Queue rate limit in requests per second. Accepts a float; or 'default' to unset.
--queue-rps-limit-reason string Reason for queue rate limit update.
-t, --task-queue string Task Queue name. Required.
--task-queue-type string Task Queue type. Accepted values: workflow, activity, nexus. Accepted values: workflow, activity, nexus. Required.
```
Sample response :
```
./temporal task-queue config set \
--task-queue=hello-world \
--task-queue-type=activity \
--fairness-key-rps-limit-default=100 \
--fairness-key-rps-limit-reason="Fairness key test" \
--identity="api-tester" \
--namespace=default
Successfully updated task queue configuration
Config {"fairnessKeysRateLimitDefault":{"rateLimit":{"requestsPerSecond":100},"metadata":{"reason":"Fairness key test","updateIdentity":"api-tester","updateTime":"2025-08-12T04:31:46.640Z"}}}
```
## Why?
+ Cli support for `UpdateTaskQueueConfig` api - new api that allows
updates of rate limits against task queues.
## Checklist
1. How was this tested:
+ Added tests.
2. Any docs updates needed?
Pending.
---------
Co-authored-by: Stephan Behnke <[email protected]>
Co-authored-by: Stephan Behnke <[email protected]>
|
I forgot to codegen before force pushing the branch, the fix is included here: #857 |
carlydf
approved these changes
Oct 6, 2025
cretz
approved these changes
Oct 6, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.