Open dhiaayachi opened 3 weeks ago
Thanks for the feature request!
This is a great idea and would provide a lot of flexibility.
In the meantime, you can create separate activities for each error code and use a Retry Policy to configure different retry behaviors for each activity.
For rate limiting, you can use a different Task Queue for each type of activity and configure rate limits per task queue.
Let us know if you have any other questions or feature requests.
Thank you for the feature request!
While Temporal currently doesn't provide direct support for different task queues based on error codes, you can achieve a similar outcome with custom logic.
Here's a workaround:
This approach lets you control the retry behavior for different error types and ensures that other activities are not impacted.
We're open to considering your feature request for a future release.
Thanks for the feature request! It's a great idea to have different retry behavior based on error codes.
Here's a way to work around this feature:
This approach would require a more custom implementation within your Activity code, but it could provide the desired flexibility.
Is your feature request related to a problem? Please describe. Some applications require different retry behavior based on error codes. For example (source):
Providing different retry options will partially help, but for rate limit error changing backoff of an individual activity is not going to help as the aggregate rate across all of them can still be high.
Describe the solution you'd like Use a different rate limited (possibly with a dynamic rate limiter) task queue to retry activities in certain scenarios. This way retries of activities that failed with a specific error code would be scheduled in a separate task queue. This allows other activities to execute and retry without being limited.
The queue might not be directly exposed to a user and be an implementation detail.