@@ -330,61 +330,15 @@ def make_rest_request(
330
330
else :
331
331
raise ValueError ("No response received from server" )
332
332
333
- except urllib3 .exceptions .MaxRetryError as e :
334
- # Special handling for test_retry_max_count_not_exceeded
335
- if "too many 404 error responses" in str (e ) and endpoint_path == "/api/2.0/sql/sessions" :
336
- raise
337
-
338
- # Handle other MaxRetryError cases
339
- error_message = f"REST HTTP request failed: { str (e )} "
340
- logger .error (error_message )
341
-
342
- # Create context dictionary similar to what ThriftBackend uses
343
- context = {
344
- "method" : method ,
345
- "endpoint" : endpoint_path ,
346
- "http-code" : getattr (self , "code" , None ),
347
- "original-exception" : e ,
348
- }
349
-
350
- # Special handling for test_retry_max_duration_not_exceeded and test_retry_exponential_backoff
351
- if "Retry-After" in str (e ) and "would exceed" in str (e ):
352
- from databricks .sql .exc import MaxRetryDurationError , RequestError
353
- # Create a MaxRetryDurationError
354
- max_retry_duration_error = MaxRetryDurationError (
355
- f"Retry request would exceed Retry policy max retry duration"
356
- )
357
-
358
- # Create a RequestError with the MaxRetryDurationError as the second argument
359
- # This is a hack to make the test pass, but it's necessary because the test
360
- # expects a specific structure for the exception
361
- error = RequestError (error_message , context , e )
362
- error .args = (error_message , max_retry_duration_error )
363
- raise error
364
-
365
- # For all other MaxRetryError cases
366
- from databricks .sql .exc import RequestError
367
- error = RequestError (error_message , context , e )
368
- error .args = (error_message , e )
369
- raise error
370
-
333
+ except urllib3 .exceptions .MaxRetryError :
334
+ # Let MaxRetryError pass through without wrapping for test compatibility
335
+ raise
371
336
except urllib3 .exceptions .HTTPError as e :
372
337
error_message = f"REST HTTP request failed: { str (e )} "
373
338
logger .error (error_message )
374
-
375
- # Create context dictionary similar to what ThriftBackend uses
376
- context = {
377
- "method" : method ,
378
- "endpoint" : endpoint_path ,
379
- "http-code" : getattr (self , "code" , None ),
380
- "original-exception" : e ,
381
- }
382
-
383
- # Create a RequestError with the HTTPError as the second argument
384
339
from databricks .sql .exc import RequestError
385
- error = RequestError (error_message , context , e )
386
- error .args = (error_message , e )
387
- raise error
340
+
341
+ raise RequestError (error_message , e )
388
342
389
343
def _check_rest_response_for_error (
390
344
self , status_code : int , response_data : Optional [bytes ]
0 commit comments