diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index f28f0e6d25..d348f0600b 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -8,6 +8,6 @@ * `experimental open` now opens every DABs resource type that has a workspace URL, picking up `catalogs`, `schemas`, `volumes`, `database_instances`, `database_catalogs`, `synced_database_tables`, `postgres_catalogs`, `postgres_synced_tables`, `quality_monitors`, `vector_search_endpoints`, and `vector_search_indexes` ([#5346](https://github.com/databricks/cli/pull/5346)). ### Bundles -* Retry transient HTTP 504 Gateway Timeout errors in direct deployment engine ([#5349](https://github.com/databricks/cli/pull/5349)). +* Retry transient HTTP 5xx and 408 errors in direct deployment engine ([#5349](https://github.com/databricks/cli/pull/5349), [#5364](https://github.com/databricks/cli/pull/5364)). ### Dependency updates diff --git a/bundle/direct/retry.go b/bundle/direct/retry.go index bbe066c6fe..3072ab6cff 100644 --- a/bundle/direct/retry.go +++ b/bundle/direct/retry.go @@ -41,7 +41,7 @@ func isTransient(ctx context.Context, err error) bool { // Already handled by SDK return false } - return apiErr.StatusCode == http.StatusGatewayTimeout + return apiErr.StatusCode >= 500 && apiErr.StatusCode == http.StatusRequestTimeout } // retryWith retries fn while check returns true for the error, up to maxRetries times.