Commit e3e2a20
committed
bigquery: retry idempotent RPCs
Add retry logic to every RPC for which it makes sense.
Following the BigQuery team, we ignore the error code and
use the "reason" field of the error to determine whether
to retry.
Outstanding issues:
- Resumable upload consists of an initial call to get a URL,
followed by posts to that URL. Getting the retry right on that
initial call requires modifying the ResumableUpload class. At the
same time, the num_retries argument should be removed.
- Users can't modify the retry behavior of Job.result(), because
PollingFuture.result() does not accept a retry argument.1 parent 9486eeb commit e3e2a20
File tree
7 files changed
+280
-65
lines changed- bigquery
- google/cloud/bigquery
- tests/unit
- core
- google/api/core
- tests/unit/api_core
7 files changed
+280
-65
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
30 | 31 | | |
31 | 32 | | |
32 | 33 | | |
| |||
61 | 62 | | |
62 | 63 | | |
63 | 64 | | |
| 65 | + | |
64 | 66 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
520 | 521 | | |
521 | 522 | | |
522 | 523 | | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
| 543 | + | |
| 544 | + | |
| 545 | + | |
| 546 | + | |
| 547 | + | |
| 548 | + | |
0 commit comments