zhaijack commented on a change in pull request #2065: GCS offload support(2):
replace `s3client` api with `jclouds` related api
URL: https://github.com/apache/incubator-pulsar/pull/2065#discussion_r202505385
##########
File path:
pulsar-broker/src/main/java/org/apache/pulsar/broker/offload/impl/BackedReadHandleImpl.java
##########
@@ -189,22 +183,19 @@ public boolean isClosed() {
}
public static ReadHandle open(ScheduledExecutorService executor,
- AmazonS3 s3client, String bucket, String
key, String indexKey,
+ BlobStore blobStore, String bucket, String
key, String indexKey,
VersionCheck versionCheck,
long ledgerId, int readBufferSize)
throws AmazonClientException, IOException {
- GetObjectRequest req = new GetObjectRequest(bucket, indexKey);
- try (S3Object obj = s3client.getObject(req)) {
- versionCheck.check(indexKey, obj.getObjectMetadata());
-
- OffloadIndexBlockBuilder indexBuilder =
OffloadIndexBlockBuilder.create();
- OffloadIndexBlock index =
indexBuilder.fromStream(obj.getObjectContent());
-
- BackedInputStream inputStream = new
S3BackedInputStreamImpl(s3client, bucket, key,
-
versionCheck,
-
index.getDataObjectLength(),
-
readBufferSize);
- return new S3BackedReadHandleImpl(ledgerId, index, inputStream,
executor);
- }
+ Blob blob = blobStore.getBlob(bucket, indexKey);
+ versionCheck.check(indexKey, blob);
+ OffloadIndexBlockBuilder indexBuilder =
OffloadIndexBlockBuilder.create();
+ OffloadIndexBlock index =
indexBuilder.fromStream(blob.getPayload().openStream());
Review comment:
The logic of this is not changed here, it is still closed in
BackedREadHanldeImpl.closeAsync
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services