You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by wa...@apache.org on 2022/03/15 16:27:29 UTC
[pulsar] 01/01: JCloud Offloader Now Removes S3 Objects (#14693)
This is an automated email from the ASF dual-hosted git repository.
wave pushed a commit to branch dave2wave-branch--fix-14693
in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 1a603746306eec97c1aa1d2b733e7f3dfc03e245
Author: Dave Fisher <da...@datastax.com>
AuthorDate: Tue Mar 15 09:22:22 2022 -0700
JCloud Offloader Now Removes S3 Objects (#14693)
---
.../offload/jcloud/impl/BlobStoreManagedLedgerOffloader.java | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreManagedLedgerOffloader.java b/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreManagedLedgerOffloader.java
index 77e3cd2..527f51d 100644
--- a/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreManagedLedgerOffloader.java
+++ b/tiered-storage/jcloud/src/main/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/BlobStoreManagedLedgerOffloader.java
@@ -555,13 +555,18 @@ public class BlobStoreManagedLedgerOffloader implements LedgerOffloader {
BlobStoreLocation bsKey = getBlobStoreLocation(offloadDriverMetadata);
String readBucket = bsKey.getBucket(offloadDriverMetadata);
BlobStore readBlobstore = blobStores.get(config.getBlobStoreLocation());
+ String dataContent = DataBlockUtils.dataBlockOffloadKey(ledgerId, uid);
+ String indexContent = DataBlockUtils.indexBlockOffloadKey(ledgerId, uid);
CompletableFuture<Void> promise = new CompletableFuture<>();
scheduler.chooseThread(ledgerId).submit(() -> {
try {
- readBlobstore.removeBlobs(readBucket,
- ImmutableList.of(DataBlockUtils.dataBlockOffloadKey(ledgerId, uid),
- DataBlockUtils.indexBlockOffloadKey(ledgerId, uid)));
+ log.info("Remove Blob Data: " + dataContent);
+ readBlobstore.removeBlob(readBucket, dataContent);
+ log.info("Removed Blob Data: " + dataContent);
+ log.info("Remove Blob Index: " + indexContent);
+ readBlobstore.removeBlob(readBucket, indexContent);
+ log.info("Removed Blob Index: " + indexContent);
promise.complete(null);
} catch (Throwable t) {
log.error("Failed delete Blob", t);