Skip to content

Commit 376a2e6

Browse files
committed
docs(guides): trim Retries section in error-handling.md to cross-reference
## Purpose DX-0162 added a comprehensive retries guide. The old Retries section in error-handling.md was a subset of that content and would drift over time. Two docs covering the same ground means two sources of truth to maintain. ## Solution Replaced the Retries section body with a 3-line summary and a {doc} cross-reference to /guides/retries. The ## Retries heading is preserved so existing anchor links (#retries) continue to resolve. Sphinx build confirmed the cross-reference resolves and no new warnings were introduced.
1 parent fdadfde commit 376a2e6

1 file changed

Lines changed: 6 additions & 29 deletions

File tree

‎docs/guides/error-handling.md‎

Lines changed: 6 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -129,36 +129,13 @@ except ConflictError:
129129

130130
## Retries
131131

132-
The SDK retries failed requests automatically. The default `RetryConfig` retries up to
133-
**3 attempts total** (1 initial + 2 retries) with exponential backoff for status codes
134-
`408`, `429`, `500`, `502`, `503`, and `504`.
132+
The SDK retries failed requests automatically with decorrelated jitter on
133+
the backoff path and smearing on top of server-supplied `Retry-After` /
134+
`grpc-retry-pushback-ms` hints. Bulk operations also self-tune effective
135+
concurrency in response to throttling.
135136

136-
Customize retry behavior by passing a `RetryConfig` to `Pinecone()`:
137-
138-
```python
139-
from pinecone import Pinecone, RetryConfig
140-
141-
pc = Pinecone(
142-
retry_config=RetryConfig(
143-
max_retries=5,
144-
backoff_factor=1.0,
145-
max_wait=30.0,
146-
retryable_status_codes=frozenset({429, 500, 503}),
147-
)
148-
)
149-
```
150-
151-
To disable retries entirely, set `max_retries=1`:
152-
153-
```python
154-
pc = Pinecone(retry_config=RetryConfig(max_retries=1))
155-
```
156-
157-
A 429 response triggers a retry by default (with the `Retry-After` header honored if
158-
present). If retries are exhausted, the SDK raises `RateLimitError` with the parsed
159-
`Retry-After` value on `exc.retry_after`. To handle rate limits without relying on
160-
retries, set `retryable_status_codes=frozenset()` excluding 429 and catch
161-
`RateLimitError` directly.
137+
Full retry behavior, configuration, and multi-process guidance:
138+
{doc}`/guides/retries`.
162139

163140
## Timeouts
164141

0 commit comments

Comments
 (0)