diff --git a/plugin/trino-hive/pom.xml b/plugin/trino-hive/pom.xml index 288589f383d0..7d6c1bb09eee 100644 --- a/plugin/trino-hive/pom.xml +++ b/plugin/trino-hive/pom.xml @@ -175,21 +175,7 @@ com.google.cloud.bigdataoss gcs-connector - - - - com.google.cloud.bigdataoss - gcsio - - - - com.google.cloud.bigdataoss - util - - - - com.google.cloud.bigdataoss - util-hadoop + shaded diff --git a/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GcsConfigurationProvider.java b/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GcsConfigurationProvider.java index ee5300e0f526..d059dfed6911 100644 --- a/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GcsConfigurationProvider.java +++ b/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GcsConfigurationProvider.java @@ -13,13 +13,13 @@ */ package io.trino.plugin.hive.gcs; -import com.google.cloud.hadoop.gcsio.GoogleCloudStorageFileSystem; import io.trino.hdfs.DynamicConfigurationProvider; import io.trino.hdfs.HdfsContext; import org.apache.hadoop.conf.Configuration; import java.net.URI; +import static com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem.SCHEME; import static io.trino.hdfs.DynamicConfigurationProvider.setCacheKey; import static io.trino.plugin.hive.gcs.GcsAccessTokenProvider.GCS_ACCESS_TOKEN_CONF; @@ -31,7 +31,7 @@ public class GcsConfigurationProvider @Override public void updateConfiguration(Configuration configuration, HdfsContext context, URI uri) { - if (!uri.getScheme().equals(GoogleCloudStorageFileSystem.SCHEME)) { + if (!uri.getScheme().equals(SCHEME)) { return; } diff --git a/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GoogleGcsConfigurationInitializer.java b/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GoogleGcsConfigurationInitializer.java index 5adeb649f24d..723f14edbed1 100644 --- a/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GoogleGcsConfigurationInitializer.java +++ b/plugin/trino-hive/src/main/java/io/trino/plugin/hive/gcs/GoogleGcsConfigurationInitializer.java @@ -14,15 +14,16 @@ package io.trino.plugin.hive.gcs; import com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystem; +import com.google.cloud.hadoop.util.AccessTokenProvider; import io.trino.hdfs.ConfigurationInitializer; import org.apache.hadoop.conf.Configuration; import javax.inject.Inject; -import static com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystemBase.AUTHENTICATION_PREFIX; -import static com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystemConfiguration.AUTH_SERVICE_ACCOUNT_ENABLE; -import static com.google.cloud.hadoop.util.AccessTokenProviderClassFromConfigFactory.ACCESS_TOKEN_PROVIDER_IMPL_SUFFIX; -import static com.google.cloud.hadoop.util.EntriesCredentialConfiguration.JSON_KEYFILE_SUFFIX; +import static com.google.cloud.hadoop.fs.gcs.GoogleHadoopFileSystemConfiguration.GCS_CONFIG_PREFIX; +import static com.google.cloud.hadoop.fs.gcs.HadoopCredentialConfiguration.ACCESS_TOKEN_PROVIDER_IMPL_SUFFIX; +import static com.google.cloud.hadoop.fs.gcs.HadoopCredentialConfiguration.ENABLE_SERVICE_ACCOUNTS_SUFFIX; +import static com.google.cloud.hadoop.fs.gcs.HadoopCredentialConfiguration.SERVICE_ACCOUNT_JSON_KEYFILE_SUFFIX; public class GoogleGcsConfigurationInitializer implements ConfigurationInitializer @@ -44,13 +45,13 @@ public void initializeConfiguration(Configuration config) if (useGcsAccessToken) { // use oauth token to authenticate with Google Cloud Storage - config.set(AUTH_SERVICE_ACCOUNT_ENABLE.getKey(), "false"); - config.set(AUTHENTICATION_PREFIX + ACCESS_TOKEN_PROVIDER_IMPL_SUFFIX, GcsAccessTokenProvider.class.getName()); + config.setBoolean(GCS_CONFIG_PREFIX + ENABLE_SERVICE_ACCOUNTS_SUFFIX.getKey(), false); + config.setClass(GCS_CONFIG_PREFIX + ACCESS_TOKEN_PROVIDER_IMPL_SUFFIX.getKey(), GcsAccessTokenProvider.class, AccessTokenProvider.class); } else if (jsonKeyFilePath != null) { // use service account key file - config.set(AUTH_SERVICE_ACCOUNT_ENABLE.getKey(), "true"); - config.set(AUTHENTICATION_PREFIX + JSON_KEYFILE_SUFFIX, jsonKeyFilePath); + config.setBoolean(GCS_CONFIG_PREFIX + ENABLE_SERVICE_ACCOUNTS_SUFFIX.getKey(), true); + config.set(GCS_CONFIG_PREFIX + SERVICE_ACCOUNT_JSON_KEYFILE_SUFFIX.getKey(), jsonKeyFilePath); } } } diff --git a/pom.xml b/pom.xml index 88f5a3997a77..3f0cae0b7e5b 100644 --- a/pom.xml +++ b/pom.xml @@ -60,7 +60,7 @@ 19.3.0.0 1.14 189 - 2.0.0 + 2.2.7 2.15.0 1.17.3 1.0.8 @@ -1115,6 +1115,7 @@ com.google.cloud.bigdataoss gcs-connector hadoop2-${dep.gcs.version} + shaded log4j @@ -1124,33 +1125,53 @@ org.slf4j slf4j-log4j12 - - - - - com.google.cloud.bigdataoss - gcsio - ${dep.gcs.version} - + + org.apache.httpcomponents + httpclient + + + org.apache.httpcomponents + httpcore + com.google.code.gson gson + + com.google.http-client + google-http-client + + + io.grpc + grpc-context + + + com.google.cloud.bigdataoss + gcsio + + + com.google.flogger + flogger-system-backend + + + com.google.cloud.bigdataoss + util + + + com.google.cloud.bigdataoss + util-hadoop + + + com.google.oauth-client + google-oauth-client + + + com.google.http-client + google-http-client-gson + - - com.google.cloud.bigdataoss - util - ${dep.gcs.version} - - - - com.google.cloud.bigdataoss - util-hadoop - hadoop2-${dep.gcs.version} - - com.google.errorprone error_prone_annotations @@ -1952,6 +1973,44 @@ true + + org.basepom.maven + duplicate-finder-maven-plugin + + + + + + com.google.cloud.bigdataoss + gcs-connector + + + org.apache.httpcomponents + httpclient + + + + mozilla/public-suffix-list.txt + + + + + + com.google.api + gax + + + com.google.cloud.bigdataoss + gcs-connector + + + + dependencies.properties + + + + +