This is an automated email from the ASF dual-hosted git repository.

htowaileb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git


The following commit(s) were added to refs/heads/master by this push:
     new 107c881d1e ASTERIXDB-3036: Cannot pass endpoint property for GCS 
external datasets
107c881d1e is described below

commit 107c881d1e5dd068c8b36144f44b4b437da4a497
Author: Hussain Towaileb <[email protected]>
AuthorDate: Fri May 20 17:24:39 2022 +0300

    ASTERIXDB-3036: Cannot pass endpoint property for GCS external datasets
    
    Change-Id: I4204fdc48141a03306468a55bfc89b349e9afce1
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/16403
    Reviewed-by: Hussain Towaileb <[email protected]>
    Reviewed-by: Dmitry Lychagin <[email protected]>
    Contrib: Jenkins <[email protected]>
    Integration-Tests: Jenkins <[email protected]>
    Tested-by: Jenkins <[email protected]>
---
 .../java/org/apache/asterix/external/util/ExternalDataUtils.java    | 2 +-
 .../org/apache/asterix/external/util/google/gcs/GCSConstants.java   | 1 +
 .../java/org/apache/asterix/external/util/google/gcs/GCSUtils.java  | 6 ++++++
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
index 702ef42d6f..62dc07425f 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/ExternalDataUtils.java
@@ -530,7 +530,7 @@ public class ExternalDataUtils {
             case ExternalDataConstants.KEY_ADAPTER_NAME_AZURE_DATA_LAKE:
                 validateAzureDataLakeProperties(configuration, srcLoc, 
collector, appCtx);
                 break;
-            case KEY_ADAPTER_NAME_GCS:
+            case ExternalDataConstants.KEY_ADAPTER_NAME_GCS:
                 validateProperties(configuration, srcLoc, collector);
                 break;
             default:
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSConstants.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSConstants.java
index 8a0be99faf..4a3ed8d4e8 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSConstants.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSConstants.java
@@ -24,4 +24,5 @@ public class GCSConstants {
     }
 
     public static final String JSON_CREDENTIALS_FIELD_NAME = "jsonCredentials";
+    public static final String ENDPOINT_FIELD_NAME = "endpoint";
 }
diff --git 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSUtils.java
 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSUtils.java
index 553733fe42..69fd2d4299 100644
--- 
a/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSUtils.java
+++ 
b/asterixdb/asterix-external-data/src/main/java/org/apache/asterix/external/util/google/gcs/GCSUtils.java
@@ -24,6 +24,7 @@ import static 
org.apache.asterix.external.util.ExternalDataConstants.KEY_FORMAT;
 import static org.apache.asterix.external.util.ExternalDataUtils.getPrefix;
 import static 
org.apache.asterix.external.util.ExternalDataUtils.isParquetFormat;
 import static 
org.apache.asterix.external.util.ExternalDataUtils.validateIncludeExclude;
+import static 
org.apache.asterix.external.util.google.gcs.GCSConstants.ENDPOINT_FIELD_NAME;
 import static 
org.apache.asterix.external.util.google.gcs.GCSConstants.JSON_CREDENTIALS_FIELD_NAME;
 import static org.apache.hyracks.api.util.ExceptionUtils.getMessageOrToString;
 
@@ -63,6 +64,7 @@ public class GCSUtils {
      */
     public static Storage buildClient(Map<String, String> configuration) 
throws CompilationException {
         String jsonCredentials = 
configuration.get(JSON_CREDENTIALS_FIELD_NAME);
+        String endpoint = configuration.get(ENDPOINT_FIELD_NAME);
 
         StorageOptions.Builder builder = StorageOptions.newBuilder();
 
@@ -75,6 +77,10 @@ public class GCSUtils {
             }
         }
 
+        if (endpoint != null) {
+            builder.setHost(endpoint);
+        }
+
         return builder.build().getService();
     }
 

Reply via email to