smaheshwar-pltr commented on code in PR #4039:
URL: https://github.com/apache/iceberg-python/pull/4039#discussion_r4307577783


##########
pyiceberg/io/fsspec.py:
##########
@@ -148,6 +148,9 @@ def __call__(self, request: "AWSRequest", **_: Any) -> None:
             "uri": request.url,
             "headers": {key: [val] for key, val in request.headers.items()},
         }
+        # The signing service needs the DeleteObjects body to authorize the 
keys being deleted
+        if operation_name == "DeleteObjects":

Review Comment:
   Mirroring Iceberg Java, which sends the `DeleteObjects` body 
[here](https://github.com/apache/iceberg/blob/f0e7de3c2f207a49ac3a241ac7346726c08c8f1b/aws/src/main/java/org/apache/iceberg/aws/s3/signer/S3V4RestSignerClient.java#L347-L366).
 See the PR description for motivation.
   
   Java identifies `DeleteObjects` from the URL (`POST` with a `delete` query 
parameter). botocore already passes `operation_name` to every `before-sign` 
handler, so the signer now accepts it and checks it directly, with no URL 
parsing.



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