>From Michael Blow <[email protected]>:
Michael Blow has uploaded this change for review. (
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20216 )
Change subject: [NO ISSUE][*DB][STO] -= cloud storage scheme 'none'
......................................................................
[NO ISSUE][*DB][STO] -= cloud storage scheme 'none'
Ext-ref: MB-68097
Change-Id: Ic122dfff07e5e6b08c16cdfb531354d5064fa518
---
M
asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/CloudClientProvider.java
D
asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/NoopCloudClient.java
M
asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/AbstractCloudIOManager.java
3 files changed, 10 insertions(+), 196 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/16/20216/1
diff --git
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/AbstractCloudIOManager.java
b/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/AbstractCloudIOManager.java
index ab93f39..511802e 100644
---
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/AbstractCloudIOManager.java
+++
b/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/AbstractCloudIOManager.java
@@ -145,11 +145,6 @@
partitionPaths.add(resolve(STORAGE_ROOT_DIR_NAME + File.separator
+ partitionDir));
}
- if (CloudClientProvider.NONE.equals(storageScheme)) {
- LOGGER.info("Cloud storage scheme is '{}', nothing to reconcile /
download", storageScheme);
- return;
- }
-
LOGGER.info("Initializing cloud manager with ({}) storage partitions:
{}", partitions.size(), partitions);
if (!currentOnDiskPartitions.isEmpty()) {
deleteUnkeptPartitionDirs(currentOnDiskPartitions);
diff --git
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/CloudClientProvider.java
b/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/CloudClientProvider.java
index 03a5b46..c675648 100644
---
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/CloudClientProvider.java
+++
b/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/CloudClientProvider.java
@@ -33,7 +33,6 @@
public static final String S3 = "s3";
public static final String GCS = "gs";
public static final String AZ_BLOB = "azblob";
- public static final String NONE = "none";
private CloudClientProvider() {
throw new AssertionError("do not instantiate");
@@ -46,7 +45,6 @@
case S3 -> new S3CloudClient(S3ClientConfig.of(cloudProperties),
guardian);
case GCS -> new
GCSCloudClient(GCSClientConfig.of(cloudProperties), guardian);
case AZ_BLOB -> new
AzBlobStorageCloudClient(AzBlobStorageClientConfig.of(cloudProperties),
guardian);
- case NONE -> NoopCloudClient.INSTANCE;
default -> throw new IllegalStateException("unsupported cloud
storage scheme: " + storageScheme);
};
diff --git
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/NoopCloudClient.java
b/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/NoopCloudClient.java
deleted file mode 100644
index 45dabeb..0000000
---
a/asterixdb/asterix-cloud/src/main/java/org/apache/asterix/cloud/clients/NoopCloudClient.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.asterix.cloud.clients;
-
-import java.io.FilenameFilter;
-import java.io.InputStream;
-import java.nio.ByteBuffer;
-import java.util.Collection;
-import java.util.List;
-import java.util.Set;
-import java.util.function.Predicate;
-
-import org.apache.asterix.cloud.IWriteBufferProvider;
-import org.apache.asterix.cloud.clients.profiler.IRequestProfilerLimiter;
-import org.apache.asterix.cloud.clients.profiler.NoOpRequestProfilerLimiter;
-import org.apache.hyracks.api.exceptions.HyracksDataException;
-import org.apache.hyracks.api.io.FileReference;
-import org.apache.hyracks.control.nc.io.IOManager;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-
-public class NoopCloudClient implements ICloudClient {
-
- public static final ICloudClient INSTANCE = new NoopCloudClient();
- private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();
-
- private NoopCloudClient() {
- }
-
- @Override
- public void close() throws HyracksDataException {
- // no-op
- }
-
- @Override
- public int getWriteBufferSize() {
- return 0;
- }
-
- @Override
- public IRequestProfilerLimiter getProfilerLimiter() {
- return NoOpRequestProfilerLimiter.INSTANCE;
- }
-
- @Override
- public ICloudWriter createWriter(String bucket, String path,
IWriteBufferProvider bufferProvider) {
- return new NoOpCloudWriter();
- }
-
- @Override
- public Set<CloudFile> listObjects(String bucket, String path,
FilenameFilter filter) {
- return Set.of();
- }
-
- @Override
- public int read(String bucket, String path, long offset, ByteBuffer
buffer) throws HyracksDataException {
- return 0;
- }
-
- @Override
- public byte[] readAllBytes(String bucket, String path) throws
HyracksDataException {
- return null;
- }
-
- @Override
- public InputStream getObjectStream(String bucket, String path, long
offset, long length) {
- return InputStream.nullInputStream();
- }
-
- @Override
- public void write(String bucket, String path, byte[] data) {
- }
-
- @Override
- public void copy(String bucket, String srcPath, FileReference destPath) {
- }
-
- @Override
- public void deleteObjects(String bucket, Collection<String> paths) throws
HyracksDataException {
- }
-
- @Override
- public long getObjectSize(String bucket, String path) throws
HyracksDataException {
- return 0;
- }
-
- @Override
- public boolean exists(String bucket, String path) throws
HyracksDataException {
- return false;
- }
-
- @Override
- public boolean isEmptyPrefix(String bucket, String path) throws
HyracksDataException {
- return false;
- }
-
- @Override
- public IParallelDownloader createParallelDownloader(String bucket,
IOManager ioManager)
- throws HyracksDataException {
- return NoOpParallelDownloader.INSTANCE;
- }
-
- @Override
- public Predicate<Exception> getObjectNotFoundExceptionPredicate() {
- return e -> true;
- }
-
- @Override
- public JsonNode listAsJson(ObjectMapper objectMapper, String bucket) {
- return OBJECT_MAPPER.createArrayNode();
- }
-
- private static class NoOpCloudWriter implements ICloudWriter {
-
- long position = 0L;
-
- public NoOpCloudWriter() {
- }
-
- @Override
- public void abort() throws HyracksDataException {
- position = 0L;
- }
-
- @Override
- public int write(ByteBuffer page) throws HyracksDataException {
- int written = page.remaining();
- position += written;
- page.position(page.limit());
- return written;
- }
-
- @Override
- public void write(int b) throws HyracksDataException {
- position++;
- }
-
- @Override
- public int write(byte[] b, int off, int len) throws
HyracksDataException {
- position += len;
- return len;
- }
-
- @Override
- public long position() {
- return position;
- }
-
- @Override
- public void finish() throws HyracksDataException {
- position = 0;
- }
- }
-
- private static class NoOpParallelDownloader implements IParallelDownloader
{
- private static final NoOpParallelDownloader INSTANCE = new
NoOpParallelDownloader();
-
- @Override
- public void close() throws HyracksDataException {
- }
-
- @Override
- public void downloadFiles(Collection<FileReference> toDownload) throws
HyracksDataException {
- }
-
- @Override
- public Collection<FileReference>
downloadDirectories(Collection<FileReference> toDownload)
- throws HyracksDataException {
- return List.of();
- }
- }
-}
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20216
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings
Gerrit-Project: asterixdb
Gerrit-Branch: phoenix
Gerrit-Change-Id: Ic122dfff07e5e6b08c16cdfb531354d5064fa518
Gerrit-Change-Number: 20216
Gerrit-PatchSet: 1
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-MessageType: newchange