Revanth14 commented on code in PR #1324:
URL: https://github.com/apache/iceberg-go/pull/1324#discussion_r3573205205


##########
catalog/rest/scan_planning.go:
##########
@@ -180,8 +378,8 @@ type CompletedPlanningResult struct {
 // wire type and the seam stay in agreement.
 type PlanTableScanRequest struct {
        // IdempotencyKey is sent as the Idempotency-Key header, not in the 
JSON body.
-       // If set, it must be a UUID string; nil lets the implementation choose 
a
-       // safe retry key.
+       // If set, it must be a UUIDv7 string (RFC 9562); nil lets the 
implementation
+       // generate a safe UUIDv7 retry key.

Review Comment:
   Addressed the documentation footgun for both request types. It now states 
that `nil` generates a fresh UUIDv7 per call and that callers must provide an 
explicit key to preserve idempotency across retries.
   
   I kept the generated key internal for this PR because returning it would 
require expanding the public method contract or mutating caller-owned request 
state. Callers that need retry dedup can generate one UUIDv7 before the first 
attempt and reuse it through `IdempotencyKey`; we can revisit a returned-key 
API separately if needed.



-- 
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