@@ -147,7 +147,7 @@ class HttpRetry(BaseModel):
147147 """Configuration for HTTP retry behavior with exponential backoff"""
148148
149149 max_retries : Optional [int ] = Field (
150- default = 3 ,
150+ default = 20 ,
151151 description = "Maximum number of retry attempts for rate-limited requests" ,
152152 )
153153 initial_delay : Optional [float ] = Field (
@@ -162,6 +162,15 @@ class HttpRetry(BaseModel):
162162 model_config = ConfigDict (validate_assignment = True )
163163
164164
165+ class ApiSettings (BaseModel ):
166+ # HTTP retry configuration
167+ http_retry : Optional [HttpRetry ] = Field (default_factory = HttpRetry )
168+ polling_interval : Optional [float ] = Field (
169+ default = 1 , description = "Polling interval for REST api in seconds"
170+ )
171+ model_config = ConfigDict (validate_assignment = True )
172+
173+
165174class Dremio (BaseModel ):
166175 uri : Annotated [
167176 Union [str , HttpUrl , DremioCloudUri ], AfterValidator (_resolve_dremio_uri )
@@ -177,10 +186,8 @@ class Dremio(BaseModel):
177186 allow_dml : Optional [bool ] = False
178187 auth_issuer_uri_override : Optional [str ] = None
179188 wlm : Optional [Wlm ] = None
180- # Metrics server configuration
189+ api : Optional [ ApiSettings ] = Field ( default_factory = ApiSettings )
181190 metrics : Optional [Metrics ] = None
182- # HTTP retry configuration
183- http_retry : Optional [HttpRetry ] = Field (default_factory = HttpRetry )
184191 model_config = ConfigDict (validate_assignment = True )
185192
186193 @field_serializer ("raw_pat" )
0 commit comments