Skip to content

Commit c914fb1

Browse files
Document non-retryable generator reentrancy errors
Co-authored-by: Shri Sukhani <shrisukhani@users.noreply.github.com>
1 parent fc4122d commit c914fb1

1 file changed

Lines changed: 1 addition & 0 deletions

File tree

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,7 @@ Polling callback contracts are also validated:
147147
- Callback contract violations and callback execution failures fail fast with explicit callback-specific errors.
148148
- Reused coroutine callback errors (e.g. `cannot reuse already awaited coroutine`) are treated as non-retryable and surfaced immediately.
149149
- Async generator reuse runtime errors (e.g. `asynchronous generator is already running`) are treated as non-retryable and surfaced immediately.
150+
- Generator reentrancy errors (e.g. `generator already executing`) are treated as non-retryable and surfaced immediately.
150151
- Iterator exhaustion callback errors (`StopIteration` / `StopAsyncIteration`) are treated as non-retryable and surfaced immediately.
151152
- Async loop contract runtime errors (e.g. `Future attached to a different loop`, `Task is bound to a different event loop`, `Non-thread-safe operation invoked on an event loop other than the current one`, `Event loop is closed`) are treated as non-retryable and surfaced immediately.
152153
- Wait helpers (`start_and_wait`, `wait_for_job_result`) only execute fetch/result callbacks after terminal status is reached; polling failures/timeouts short-circuit before fetch retries begin.

0 commit comments

Comments
 (0)