[
https://issues.apache.org/jira/browse/DRILL-6604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16612284#comment-16612284
]
Vitalii Diravka commented on DRILL-6604:
----------------------------------------
The HMS issues which were resolved in hive-3.1 from which Drill Metastore can
get the benefit:
HIVE-19171: Persist runtime statistics in metastore, HIVE-17626 - parent
1) better statistics for table scan operator if dynamic partition pruning is
involved
2) Better estimates for bloom filter initialization (setting expected entries
during merge)
HIVE-15436: Enhancing metastore APIs to retrieve only materialized views
instead of returning all tables
HIVE-16452: Database UUID for metastore DB (thrift API call for
get_metastore_uuid)
HIVE-17159 Make metastore a separately releasable module (the metastore
package is more independent from other Hive's sources)
HIVE-17167 - Create metastore specific configuration tool (separate HMS
configs)
HIVE-17466 - Metastore API to list unique partition-key-value combinations
HIVE-16520 - Cache hive metadata in metastore ([Hive Metadata
Caching|https://cwiki.apache.org/confluence/display/Hive/Hive+Metadata+Caching+Proposa])
HIVE-12274 - Increase width of columns used for general configuration in the
metastore
HIVE-16771 - Schematool should use MetastoreSchemaInfo to get the metastore
schema version from database
HIVE-16914 - Change HiveMetaStoreClient to AutoCloseable
HIVE-16955 - General Improvements To
org.apache.hadoop.hive.metastore.MetaStoreUtils
HIVE-16970 - General Improvements To
org.apache.hadoop.hive.metastore.cache.CacheUtils
The full list is [https://github.com/apache/hive/blob/master/RELEASE_NOTES.txt]
> Upgrade Drill Hive client to Hive3.1 version
> --------------------------------------------
>
> Key: DRILL-6604
> URL: https://issues.apache.org/jira/browse/DRILL-6604
> Project: Apache Drill
> Issue Type: Improvement
> Affects Versions: 1.14.0
> Reporter: Vitalii Diravka
> Assignee: Vitalii Diravka
> Priority: Major
> Fix For: Future
>
>
> Recently the Hive3.1 version is released.
> 3.1 versions of {{hive-exec}} and {{hive-metastore}} (main Drill Hive client
> libraries) are the last available artifacts in maven repo for now:
> [https://mvnrepository.com/artifact/org.apache.hive/hive-exec/3.1.0]
> [https://mvnrepository.com/artifact/org.apache.hive/hive-metastore/3.1.0]
> It is necessary to investigate what impact of update onto the newer major
> Hive client version.
> The initial conflicts after changing the {{hive.version}} in Drill root pom
> file from 2.3.2 to 3.1.0 are:
> {code}
> [ERROR] COMPILATION ERROR :
> [INFO] -------------------------------------------------------------
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveUtilities.java:[58,39]
> error: cannot find symbol
> [ERROR] symbol: class MetaStoreUtils
> location: package org.apache.hadoop.hive.metastore
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveMetadataProvider.java:[34,39]
> error: cannot find symbol
> [INFO] 2 errors
> {code}
> {code}
> [ERROR] COMPILATION ERROR :
> [INFO] -------------------------------------------------------------
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveUtilities.java:[575,15]
> error: cannot find symbol
> [ERROR] symbol: method setTransactionalTableScan(JobConf,boolean)
> location: class AcidUtils
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveFieldConverter.java:[216,92]
> error: incompatible types: org.apache.hadoop.hive.common.type.Timestamp
> cannot be converted to java.sql.Timestamp
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/HiveFieldConverter.java:[225,82]
> error: incompatible types: org.apache.hadoop.hive.common.type.Date cannot be
> converted to java.sql.Date
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/src/main/java/org/apache/drill/exec/store/hive/DrillHiveMetaStoreClient.java:[100,17]
> error: cannot find symbol
> [ERROR] symbol: method setTokenStr(UserGroupInformation,String,String)
> location: class Utils
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[29,16]
> error: Required is not abstract and does not override abstract method
> getPrimitiveJavaObject(Object) in TimestampObjectInspector
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[35,30]
> error: getPrimitiveJavaObject(Object) in Required cannot implement
> getPrimitiveJavaObject(Object) in TimestampObjectInspector
> [ERROR] return type java.sql.Timestamp is not compatible with
> org.apache.hadoop.hive.common.type.Timestamp
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[44,29]
> error: getPrimitiveWritableObject(Object) in Required cannot implement
> getPrimitiveWritableObject(Object) in TimestampObjectInspector
> [ERROR] return type TimestampWritable is not compatible with
> TimestampWritableV2
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[54,16]
> error: Optional is not abstract and does not override abstract method
> getPrimitiveJavaObject(Object) in TimestampObjectInspector
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[60,30]
> error: getPrimitiveJavaObject(Object) in Optional cannot implement
> getPrimitiveJavaObject(Object) in TimestampObjectInspector
> [ERROR] return type java.sql.Timestamp is not compatible with
> org.apache.hadoop.hive.common.type.Timestamp
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillTimeStampTimestampObjectInspector.java:[72,29]
> error: getPrimitiveWritableObject(Object) in Optional cannot implement
> getPrimitiveWritableObject(Object) in TimestampObjectInspector
> [ERROR] return type TimestampWritable is not compatible with
> TimestampWritableV2
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[29,16]
> error: Required is not abstract and does not override abstract method
> getPrimitiveJavaObject(Object) in DateObjectInspector
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[35,25]
> error: getPrimitiveJavaObject(Object) in Required cannot implement
> getPrimitiveJavaObject(Object) in DateObjectInspector
> [ERROR] return type java.sql.Date is not compatible with
> org.apache.hadoop.hive.common.type.Date
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[44,24]
> error: getPrimitiveWritableObject(Object) in Required cannot implement
> getPrimitiveWritableObject(Object) in DateObjectInspector
> [ERROR] return type DateWritable is not compatible with DateWritableV2
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[54,16]
> error: Optional is not abstract and does not override abstract method
> getPrimitiveJavaObject(Object) in DateObjectInspector
> [ERROR]
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[60,25]
> error: getPrimitiveJavaObject(Object) in Optional cannot implement
> getPrimitiveJavaObject(Object) in DateObjectInspector
> [ERROR] return type java.sql.Date is not compatible with
> org.apache.hadoop.hive.common.type.Date
> /home/vitalii/IdeaProjects/drill-fork/contrib/storage-hive/core/target/generated-sources/org/apache/drill/exec/expr/fn/impl/hive/DrillDateDateObjectInspector.java:[72,24]
> error: getPrimitiveWritableObject(Object) in Optional cannot implement
> getPrimitiveWritableObject(Object) in DateObjectInspector
> [INFO] 16 errors
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)