zhjwpku opened a new pull request, #1060:
URL: https://github.com/apache/iceberg-cpp/pull/1060

   Configure REST transport through rest.client.* properties for connection and 
socket timeouts, retry limits, user-agent and idempotency-key lifetime. Apply 
initial and merged catalog properties through the client factory, preserving 
custom factories and the existing timeout constructor.
   
   Use Java's three-minute default connection timeout and zero-value timeout 
semantics. Enforce response inactivity deadlines in milliseconds with a 
synchronous libcurl transfer loop, without an additional executor.
   
   Authenticate once and replay the same request across retries. Decide HTTP 
status retries after headers and before reading the entity. Honor 
Idempotency-Key for retry-safe requests and bound keyed retries by the 
first-send time and maximum next interval, including Retry-After or jitter. 
Parse key lifetimes as ISO-8601 durations with Java-compatible handling of 
invalid and non-positive values.
   
   Retry eligible request-execution I/O failures without a delay. Propagate 
final response-body failures without replaying the request. Preserve redirect 
protection, transfer-error reporting and commit-state-unknown handling. 
Saturate oversized Retry-After conversions without overflow and avoid echoing 
malformed OAuth token responses.
   
   Document the transport policy and add regression coverage for retry rules, 
key lifetime budgets, stable authentication, timeout precision and duration 
boundaries.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to