diff --git a/sdks/python/apache_beam/io/gcp/gcsio_integration_test.py b/sdks/python/apache_beam/io/gcp/gcsio_integration_test.py index 4616f007bfc5..fa2049221980 100644 --- a/sdks/python/apache_beam/io/gcp/gcsio_integration_test.py +++ b/sdks/python/apache_beam/io/gcp/gcsio_integration_test.py @@ -242,9 +242,27 @@ def test_create_default_bucket(self, mock_default_gcs_bucket_name): # verify soft delete policy is disabled by default in the default bucket # after creation self.assertEqual(bucket.soft_delete_policy.retention_duration_seconds, 0) - bucket.delete() - - self.assertIsNone(self.gcsio.get_bucket(overridden_bucket_name)) + max_retries = 5 + retry_delay = 1 + existing_bucket = None + for attempt in range(max_retries): + try: + existing_bucket = self.gcsio.get_bucket(overridden_bucket_name) + break + except NotFound: + if attempt < max_retries - 1: + time.sleep(retry_delay) + retry_delay *= 2 + else: + existing_bucket = None + if existing_bucket: + try: + existing_bucket.delete() + except NotFound: + pass + time.sleep(WAIT_BUCKET_PROPAGATION_SECONDS) + with self.assertRaises(NotFound): + self.gcsio.get_bucket(overridden_bucket_name) class GcsIOReadGzipTest(unittest.TestCase):