Fucun Chu has uploaded a new patch set (#7). ( 
http://gerrit.cloudera.org:8080/17774 )

Change subject: IMPALA-10871: Add MetastoreShim to support Apache Hive 3.1.2
......................................................................

IMPALA-10871: Add MetastoreShim to support Apache Hive 3.1.2

Like IMPALA-8369, this patch adds a compatibility shim in fe so that
Impala can interoperate with Hive 3.1.2. we need adds a new
Metastoreshim class under compat-apache-hive-3 directory. These shim
classes implement method which are different in hive-3 vs apache-hive-3
and are used by front end code. At the build time, based on the
environment variable IMPALA_HIVE_DIST_TYPE one of the two shims is
added to as source using the fe/pom.xml build plugin.

Some codes that directly use Hive 4 APIs need to be ignored in
compilation, eg. fe/src/main/java/org/apache/impala/catalog/metastore/.
Use Maven profile to ignore some codes, profile will automatically
activated based on the IMPALA_HIVE_DIST_TYPE.

Testing:
1. Code compiles and runs against both HMS-3 and Apache-HMS-3
2. Ran full-suite of tests against HMS-3
3. Running full-tests against Apache-HMS-3 will need more work
supporting Tez in the mini-cluster (for dataloading) and HMS
transaction support since HMS-3 use Hive 4 APIs. This will be on-going
effort and test failures on Apache-Hive-3 will be fixed in additional
sub-tasks.

Notes:
1. Patch uses a custom build of Hive to be deployed in mini-cluster.
This build has the fixes for HIVE-20038, HIVE-22717. This hack will be
added to the build script in additional sub-tasks.

Change-Id: I9f08db5f6da735ac431819063060941f0941f606
---
M fe/pom.xml
A 
fe/src/compat-apache-hive-3/java/org/apache/impala/compat/HiveMetadataFormatUtils.java
A fe/src/compat-apache-hive-3/java/org/apache/impala/compat/MetastoreShim.java
M fe/src/compat-hive-3/java/org/apache/impala/compat/MetastoreShim.java
M fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java
M fe/src/main/java/org/apache/impala/catalog/events/MetastoreEvents.java
M fe/src/main/java/org/apache/impala/catalog/local/DirectMetaProvider.java
A fe/src/main/java/org/apache/impala/catalog/metastore/CatalogHmsUtils.java
M 
fe/src/main/java/org/apache/impala/catalog/metastore/CatalogMetastoreServer.java
M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java
M fe/src/main/java/org/apache/impala/service/DescribeResultFactory.java
M fe/src/main/java/org/apache/impala/service/JniCatalog.java
M fe/src/main/java/org/apache/impala/util/AcidUtils.java
M fe/src/test/java/org/apache/impala/catalog/PartialCatalogInfoWriteIdTest.java
M 
fe/src/test/java/org/apache/impala/catalog/events/MetastoreEventsProcessorTest.java
M fe/src/test/java/org/apache/impala/testutil/CatalogServiceTestCatalog.java
M java/pom.xml
M testdata/bin/generate-schema-statements.py
M tests/util/test_file_parser.py
19 files changed, 2,203 insertions(+), 118 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/74/17774/7
--
To view, visit http://gerrit.cloudera.org:8080/17774
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I9f08db5f6da735ac431819063060941f0941f606
Gerrit-Change-Number: 17774
Gerrit-PatchSet: 7
Gerrit-Owner: Fucun Chu <chufu...@hotmail.com>
Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com>
Gerrit-Reviewer: Quanlong Huang <huangquanl...@gmail.com>

Reply via email to