munendrasn opened a new pull request, #18463:
URL: https://github.com/apache/iceberg/pull/18463

   GCSFileIO.deleteFiles could not tell a missing object from a failed delete, 
so real failures were silently swallowed and callers had nothing to retry.
   This happened because Storage.delete(Iterable<BlobId>) returns false for 
both cases.
   deleteFiles now uses StorageBatch, which reports each object's outcome 
separately: false for a missing object, true on success, and a StorageException 
on failure.
   A missing object counts as success, so retries are safe to repeat.
   Any real failure (for example a permission error) is raised as 
BulkDeletionFailureException, so the caller knows what failed and can retry it.
   
   The GCSFileIO integration tests now run against both the fake-gcs emulator 
and real GCS, and clean up after themselves.
   
   This should preferably be merged after 
https://github.com/apache/iceberg/pull/18462, which wires the GCP integration 
tests into gradle check so they run in CI.
   


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