|
40 | 40 | IPython = None |
41 | 41 |
|
42 | 42 | from google.api_core.exceptions import PreconditionFailed |
| 43 | +from google.api_core.exceptions import BadRequest |
| 44 | +from google.api_core.exceptions import Conflict |
| 45 | +from google.api_core.exceptions import Forbidden |
| 46 | +from google.api_core.exceptions import NotFound |
| 47 | +from google.api_core.exceptions import TooManyRequests |
43 | 48 | from google.cloud import bigquery |
44 | | -from google.cloud.bigquery.dataset import Dataset, DatasetReference |
| 49 | +from google.cloud.bigquery.dataset import Dataset |
| 50 | +from google.cloud.bigquery.dataset import DatasetReference |
45 | 51 | from google.cloud.bigquery.table import Table |
46 | 52 | from google.cloud._helpers import UTC |
47 | 53 | from google.cloud.bigquery import dbapi |
48 | | -from google.cloud.exceptions import BadRequest, Forbidden, NotFound |
49 | 54 | from google.cloud import storage |
50 | 55 |
|
51 | 56 | from test_utils.retry import RetryErrors |
@@ -135,19 +140,16 @@ def setUp(self): |
135 | 140 | self.to_delete = [] |
136 | 141 |
|
137 | 142 | def tearDown(self): |
138 | | - from google.cloud.storage import Bucket |
139 | | - from google.cloud.exceptions import BadRequest |
140 | | - from google.cloud.exceptions import Conflict |
141 | 143 |
|
142 | 144 | def _still_in_use(bad_request): |
143 | 145 | return any(error['reason'] == 'resourceInUse' |
144 | 146 | for error in bad_request._errors) |
145 | 147 |
|
146 | 148 | retry_in_use = RetryErrors(BadRequest, error_predicate=_still_in_use) |
147 | | - retry_409 = RetryErrors(Conflict) |
| 149 | + retry_409_429 = RetryErrors((Conflict, TooManyRequests)) |
148 | 150 | for doomed in self.to_delete: |
149 | | - if isinstance(doomed, Bucket): |
150 | | - retry_409(doomed.delete)(force=True) |
| 151 | + if isinstance(doomed, storage.Bucket): |
| 152 | + retry_409_429(doomed.delete)(force=True) |
151 | 153 | elif isinstance(doomed, (Dataset, bigquery.DatasetReference)): |
152 | 154 | retry_in_use(Config.CLIENT.delete_dataset)( |
153 | 155 | doomed, delete_contents=True) |
|
0 commit comments