Hive 2.3.8 - 2104 (EEP 7.1.0) Release Notes

The notes below relate specifically to the HPE Ezmeral Data Fabric Distribution for Apache Hive. You may also be interested in the Apache Hive-2.3.8 Release Notes and the Apache Hive homepage.
Hive Version 2.3.8
Release Date April 2021
HPE Version Interoperability See Hive and HCatalog Support Matrix andEcosystem Support Matrix and MEP Components and OS Support.
Source on GitHub https://github.com/mapr/hive
GitHub Release Tag 2.3.8-mapr-2104
Maven Artifacts https://repository.mapr.com/maven/
Package Names Navigate tohttp://package.ezmeral.hpe.com/releases/MEP/, and select your EEP and OS to view the list of package names.
ODBC/JDBC Drivers
Hive 2.3.8 works with the following HPE Hive drivers:

For additional driver information, see Connecting to HiveServer2.

Feature support

The following list describes support of various components and functionality with Hive 2.3.8 - 2104:

  • Supports Hive-2.3.8 on Tez-0.9.2 For more information, see Tez 0.9.2-2104 (MEP 7.1.0) Release Notes.

  • Does not support Hive on Spark. You cannot use Spark as an query engine for Hive. However, you can run Hive and Spark on the same cluster. You can also use Spark SQL and Drill to query Hive tables.

  • Does not support HDFS encryption in Hive tables.

  • Does not support LLAP with Hive-2.3.8 because Apache Slider is not an HPE supported ecosystem component.

  • Starting from Hive 2.1, Hive needs to run the schematool command as an initialization step.

Changes in default security configuration

The following list describes changes in default security for Hive 2.3.8 - 2104:
  • None.

New in This Release

Hive 2.3.8 - 2104 introduces the following enhancements or HPE platform-specific behavior changes:

  • Added configuration to view audit logs for connected, disconnected, and total connected users in HiveServer2.
  • Added Service verifier.

Fixes

This HPE release includes the following fixes on the base release:
GitHub Commit Number Data (YYYY-MM-DD) HPE Fix Number and Description
9704751 2021-05-14 MAPR-HIVE-930: Cannot run join with Order by and Limit clause specified at the same time
7c2414 2021-05-14 Revert "ZOO-36: Upgrade Hive log jars to match the Zookeeper client"
097fa53 2021-05-14 Revert "MAPR-HIVE-725 : Avatica's unshaded Jackson (2.6) conflicts with Jackson 2.7+ through hive-exec dependency
ceaa1302 2021-05-14 Revert "HIVE-15708 : Upgrade calcite version to 1.12 (Remus Rusanu via Ashutosh Chauhan)"
8489e7db9 2021-04-19 MAPR-HIVE-924 : FAILURE! - in org.apache.hive.hcatalog.api.TestHCatClient
5a058e051 2021-04-19 MAPR-HIVE-925 : FAILURE! - in TestHiveRemote>TestHive.testAutoPurgeTablesAndPartitions
9659809 2021-04-19 MAPR-HIVE-877 : Add service verifier to hive package that contains a startable service (Part II)
fd887ffb 2021-04-12 MAPR-HIVE-919: FAILURE! - in org.apache.hadoop.hive.ql.metadata.TestHive
b984382e 2021-04-08 MAPR-HIVE-907 : java.lang.NoClassDefFoundError: org/xerial/snappy/Snappy while reading parquet data
50bf5f 2021-04-08 MAPR-HIVE-917 : FAILURE! - in org.apache.hadoop.hive.ql.io.parquet.TestHiveSchemaConverter
8e3d4bd 2021-03-26 MAPR-HIVE-857 : Class path contains multiple SLF4J bindings
b08237d 2021-03-25 MAPR-HIVE-912 : Update to hbase version to 1.4.13.0-mapr-SNAPSHOT
a84e3f6 2021-03-22 MAPR-HIVE-911 : Update to Hadoop to 2.7.5.0-mapr-710-SNAPSHOT
bebe9227 2021-03-16 MAPR-HIVE-908 : FAILURE! - in org.apache.hadoop.hive.metastore.TestHiveMetaStoreTimeout
e9ac75 2021-03-14 MAPR-HIVE-897 : CVE-2021-25329 Tomcat vulnerability
33f3104 2021-03-14 MAPR-HIVE-898 : Unable to connect hs2 through jdbc HiveConnection
78222e2 2021-03-09 MAPR-HIVE-877 : Add service verifier to hive package that contains a startable service
a1f0262 2021-03-03 MAPR-HIVE-893 : Can't insert values into Hive table and simple selecting data from table: java.lang.NoClassDefFoundError: org/apache/hive/com/google/common/util/concurrent/internal/InternalFutureFailureAccess
f2e586d 2021-03-22 MAPR-HIVE-882 : /opt/mapr/hive/hive-2.3/conf.backup.*_* : No such file or directory
ccaa8b2 2021-02-22 MAPR-HIVE-883 : Make parquet versions consistent in hive/drill/sqoop
cb576a8 2021-02-18 MAPR-HIVE-873 : Add audit logs for connected, disconnected and total users
1134475 2021-02-16 MAPR-HIVE-872 : Update Hadoop version to 2.7.4.0-mapr-710-SNAPSHOT
88cdd7 2021-02-16 MAPR-HIVE-879 : Update tomcat version to latest 10.0.2
881acb6 2021-02-16 MAPR-HIVE-878 : Refactor tomcat dependency management
fa6f8d4 2021-02-08 MAPR-HIVE-874 : CVE-2020-25649 Jackson databind vulnerability
f276ad01 2021-02-03 MAPR-HIVE-871 : Unable to create table in database created with specified location when storage based authorization is enabled
91db8cf 2021-02-02 MAPR-HIVE-869: missing Hive Queries page configuration while installing hive on tez via UI Installer
66f1f3 2021-01-28 MAPR-HIVE-856: hive-site.xml contains many empty lines between properties
012e21b 2021-01-25 MAPR-HIVE-812 : The query does not work when hive.vectorized.execution.enabled is set to true
618dbc4e 2021-01-22 MAPR-HIVE-864 : FAILURE! - in org.apache.hadoop.hive.serde2.avro.TestAvroSerializer
3a5d3d4f 2021-01-21 MAPR-HIVE-860: Multiple Vulnerabilities in Hive jars found
This release from HPE also includes the following back-ported issues. For complete details, refer to the commit log for this project in GitHub.
GitHub Commit Number Data (YYYY-MM-DD) HPE Fix Number and Description
c067c097 2021-04-08 HIVE-22648: Upgrade Parquet to 1.11.0 (Marta Kuczora, reviewed by Adam Szita)
6782db81 2021-04-08 HIVE-19464: Upgrade Parquet to 1.10.0 (Jesus Camacho Rodriguez, reviewed by Prasanth Jayachandran)
7bd9eff 2021-03-23 HIVE-20204: Type conversion during IN () comparisons is using different rules from other comparison operations (Jason Dere, reviewed by Ashutosh Chauhan)
18727a 2021-03-22 HIVE-21455: Too verbose logging in AvroGenericRecordReader (Miklos Szurap, reviewed by David Mollitor and Peter Vary)
a174ab74 2021-03-22 HIVE-22891: Skip PartitionDesc Extraction In CombineHiveRecord For Non-LLAP Execution Mode (Syed Shameerur Rahman, reviewed by Ádám Szita)
cf798d 2021-03-22 HIVE-24436: Fix Avro NULL_DEFAULT_VALUE compatibility issue (#1722)
6f91c4 2021-03-22 HIVE-23980: Shade Guava from hive-exec in Hive 2.3 (#1356)
0004ff7 2021-03-22 HIVE-24324: Remove deprecated API usage from Avro (#1621) (#1672)
43875c1 2021-03-22 HIVE-23323: Add qsplits profile (Zoltan Haindrich reviewed by Miklos Gergely)
89e5f1e0 2021-02-18 HIVE-21943 : Add audit log in HiveServer2
732b650 2021-02-05 HIVE-15160: Can't order by an unselected column (Pengcheng Xiong, reviewed by Ashutosh Chauhan)
05524d04 2021-02-05 HIVE-16117: SortProjectTransposeRule should check for monotonicity preserving CAST (Jesus Camacho Rodriguez, reviewed by Ashutosh Chauhan)
225d30c 2021-02-22 HIVE-24559: Fix some spelling issues (Ricky Ma reviewed by Vihang Karajgaonkar and Miklos Gergely)
ec0c8ac 2021-02-22 HIVE-24553. Exclude calcite from test-jar dependency of hive-exec (#1794)
3c0fe12 2021-02-22 HIVE-24551: Hive should include transitive dependencies from calcite after shading it (#1792)
765be22 2021-02-22 HIVE-22708: Fix for HttpTransport to replace String.equals (Naveen Gangam, reviewed by Peter Vary)
7288caf4 2021-02-22 HIVE-24512: Exclude calcite in packaging. (#1760)

Known Issues and Limitations

  • HIVE-947: If you add tez.history.logging.service.class and tez.tez-ui.history-url.base properties to tez-site.xml file, Hive applications will fail in EEP 7.1.0. To fix this issue, remove these properties from the tez-site.xml configuration file.
  • HIVE-19502 Unable to insert values into table stored by JdbcStorageHandler

  • HIVE-19286 NPE in MERGE operator on MR mode

  • HIVE-789 [Hive-Hbase integration] Unable to run queries against hive-hbase tables. ClassNotFoundException: HiveHBaseTableInputFormat [MEP-7.0.0]

If you run an HBase + Hive + Tez integration in MEP 7.1.0, you may encounter the following exception:
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.client.mapr.BaseTableMappingRules
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
    ... 39 more

This exception can occur due to the new Tez classloader implemented in the Tez project. To resolve this issue, put the following additional JAR files in the /apps/tez/tez-0.9 folder.

Issue the following commands before you run HBase + Hive + Tez integration in MEP 7.1.0:
hadoop fs -mkdir /apps/tez/tez-0.9/hbase
hadoop fs -put /opt/mapr/hbase/hbase-1.4.12/lib/* /apps/tez/tez-0.9/hbase/
Add the following property to /opt/mapr/tez/tez-0.9/conf/tez-site.xml:
<property>
<name>tez.lib.uris</name>
<value>${fs.defaultFS}/apps/tez/tez-0.9,${fs.defaultFS}/apps/tez/tez-0.9/lib,${fs.defaultFS}/apps/tez/tez-0.9/hbase/</value>
 </property>

It is assumed that the Hive version is 2.3, Hbase version is 1.4.12, Tez version is 0.9, Hadoop version is 2.7.4, Zookeeper version is 3.5.6.0, and ecosystem release is 2009.

HIVE-760 [Hive-2.3] Could not start hive-metastore on Centos 8 MetaException(message:Version information not found in metastore)

Starting in MEP 7.0.0, use the MySQL driver with MariaDB.
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
  </property>
 <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
 </property>
Some SELECT queries can be converted to a single FETCH task minimizing latency. Currently, the query should be single sourced and should not have a subquery or any aggregations or distincts (which incurs RS), lateral views and joins:
none : disable hive.fetch.task.conversion
minimal : SELECT star, filter on partition columns, LIMIT only
more :  SELECT, filter, LIMIT only (support TABLESAMPLE and virtual columns)

Resolved Issues

  • None.