mirror of
https://github.com/apache/impala.git
synced 2026-01-13 18:00:19 -05:00
This updates the GBN to include the RANGER-4585 functionality to support multi-column policy creation. IMPALA-12554 will use this to create a single multi-column policy for a GRANT statement rather than many single-column policies. This fixes a few issues encountered during the upgrade: 1. This includes the fix for IMPALA-13433 to make test_sfs.py resilient to HMS versions that do not properly create the database directories. 2. This modified test_metadata_query_statements.py to use unique directories for the databases to avoid HMS bugs. 3. The version of Avro changed, which changed the version of Jackson and the package name of the JsonParseException. This adds code to tolerate both the old and new package name in the error message. 4. This includes the fix for IMPALA-13391 to exclude log4j-slf4j-impl from hadoop-cloud-storage. 5. This excludes an unnecessary org.cloudera.logredactor dependency. Testing: - Ran a core job Change-Id: I32727020a69a66c3af4f4096fe15bc81600e2215 Reviewed-on: http://gerrit.cloudera.org:8080/21921 Reviewed-by: Michael Smith <michael.smith@cloudera.com> Reviewed-by: Fang-Yu Rao <fangyu.rao@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>
250 lines
8.2 KiB
XML
250 lines
8.2 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
|
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.
|
|
-->
|
|
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
|
|
|
<!--
|
|
This pom contains all dependencies required to run an Impala Executor. fe/pom.xml
|
|
has a dependency on the pom file produced by this pom file. If a dependency is
|
|
listed here it will be included in the Impala coordinator, executor, and
|
|
coordinator-executor Docker images. If a jar is not listed here, it will not be
|
|
included in the executor Docker images. This allows Impala to create executor
|
|
images with fewer jar files, which decreases the overall size of the executor
|
|
Docker images.
|
|
-->
|
|
|
|
<parent>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-parent</artifactId>
|
|
<version>4.5.0-SNAPSHOT</version>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-executor-deps</artifactId>
|
|
<packaging>pom</packaging>
|
|
|
|
<name>Impala Executor Dependencies</name>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-hdfs-client</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<!-- IMPALA-9468: Avoid pulling in netty for security reasons -->
|
|
<groupId>io.netty</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.sun.jersey</groupId>
|
|
<artifactId>jersey-server</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.sun.jersey</groupId>
|
|
<artifactId>jersey-servlet</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>log4j</groupId>
|
|
<artifactId>log4j</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<!--
|
|
hadoop-cloud-storage includes several dependencies that Impala needs:
|
|
Hadoop's AWS support, Azure support, GCS connector, Knox support, etc.
|
|
hadoop-cloud-storage has been carefully tuned to include the right shaded
|
|
dependencies.
|
|
-->
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-cloud-storage</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
<!-- Exclude the aws-java-sdk-bundle dependency because the Impala minimal
|
|
version of this dependency is used instead. -->
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-bundle</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.cloudera</groupId>
|
|
<artifactId>jwtprovider-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>com.cloudera</groupId>
|
|
<artifactId>jwtprovider-knox</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>log4j</groupId>
|
|
<artifactId>log4j</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.apache.logging.log4j</groupId>
|
|
<artifactId>log4j-slf4j-impl</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-minimal-s3a-aws-sdk</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>*</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.qcloud.cos</groupId>
|
|
<artifactId>hadoop-cos</artifactId>
|
|
<version>${cos.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-aliyun</artifactId>
|
|
<version>${hadoop.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hbase</groupId>
|
|
<artifactId>hbase-client</artifactId>
|
|
<version>${hbase.version}</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.hbase</groupId>
|
|
<artifactId>hbase-common</artifactId>
|
|
<version>${hbase.version}</version>
|
|
</dependency>
|
|
|
|
<!-- This reduced dependency is derived from hive-exec and only contains classes needed
|
|
by Impala. See shaded-deps/pom.xml for more details -->
|
|
<dependency>
|
|
<groupId>org.apache.impala</groupId>
|
|
<artifactId>impala-minimal-hive-exec</artifactId>
|
|
<version>${project.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>*</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.apache.ozone</groupId>
|
|
<artifactId>ozone-filesystem-hadoop3</artifactId>
|
|
<version>${ozone.version}</version>
|
|
<!-- Remove all transitive dependencies from the Apache Ozone dependency.
|
|
ozone-filesystem-hadoop3 is a shaded-jar, which already includes
|
|
all required transitive dependencies. For some reason, Ozone still pulls
|
|
in some transitive dependencies even though they are not needed. -->
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>*</groupId>
|
|
<artifactId>*</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>3.5.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>write-executor-classpath</id>
|
|
<goals>
|
|
<goal>build-classpath</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputFile>${project.build.directory}/build-executor-deps-classpath.txt</outputFile>
|
|
<includeScope>runtime</includeScope>
|
|
<excludeTypes>pom</excludeTypes>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<!--
|
|
This profile aims to include huawei OBS dependencies.
|
|
This profile is disabled by default.
|
|
To active this profile, set environment variable 'ENABLE_OBS_FILESYSTEM' to 'true',
|
|
or use 'mvn package -Pobs-filesystem'.
|
|
-->
|
|
<id>obs-filesystem</id>
|
|
<activation>
|
|
<property>
|
|
<name>env.ENABLE_OBS_FILESYSTEM</name>
|
|
<value>true</value>
|
|
</property>
|
|
</activation>
|
|
<dependencies>
|
|
<!-- HuaweiCloud SDK. -->
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-huaweicloud</artifactId>
|
|
<version>${obs.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<repositories>
|
|
<!-- HuaweiCloud SDK repository. -->
|
|
<repository>
|
|
<id>huaweicloud.repo</id>
|
|
<url>https://repo.huaweicloud.com/repository/maven/huaweicloudsdk</url>
|
|
<name>HuaweiCloud SDK Repository</name>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|