Behavioral changes in Apache Hive

Learn about the change in certain functionality of Hive that has resulted in a change in behavior from the previously released version to this version of Cloudera Runtime.

Summary:
Change in default value of the hive.driver.parallel.compilation.global.limit property
Previous behavior:
The default value for the hive.driver.parallel.compilation.global.limit property is set to "3".
New behavior:
The default value for the hive.driver.parallel.compilation.global.limit property is changed to "5", which helps in preventing queries from getting stuck because of a limit on the number of queries that can be compiled in parallel on a HiveServer (HS2) instance.
Summary:
Change in default value of the hive.auto.convert.join.noconditionaltask.size property
Previous behavior:
The default value for the hive.auto.convert.join.noconditionaltask.size property is set to "52428800".
New behavior:
The defualt value for the hive.auto.convert.join.noconditionaltask.size property is increased to "268435456" to improve the query performance.
Summary:
Change in default value of the hive.msck.repair.batch.size property
Previous behavior:
The default value for the hive.msck.repair.batch.size property is set to '0'. This disables batching and tries to add or drop all table partitions in a single attempt, which causes runtime errors for tables with huge partitions (greater than 10000).
New behavior:
The default value for the hive.msck.repair.batch.size property is set to a non-zero value of "3000".
Summary:
Change in value for the tez.am.launch.cluster-default.cmd-opts and tez.task.launch.cluster-default.cmd-opts properties
Previous behavior:
The value for the tez.am.launch.cluster-default.cmd-opts and tez.task.launch.cluster-default.cmd-opts properties is "-server -Djava.net.preferIPv4Stack=true".
New behavior:
The value for the tez.am.launch.cluster-default.cmd-opts and tez.task.launch.cluster-default.cmd-opts properties is changed to include a JVM argument - -server -Djava.net.preferIPv4Stack=true -Djava.security.krb5.conf=${krb_krb5_conf_path}.

This enables HiveServer (HS2) to consume krb5.conf file path from an alternate location (default location: /etc/krb5.conf).

Summary:
Change in value for the tez.am.launch.cmd-opts and tez.task.launch.cmd-opts properties to support JDK17
Previous behavior:
The value for the tez.am.launch.cmd-opts and tez.task.launch.cmd-opts properties is:
-XX:+PrintGCDetails -verbose:gc -XX:+UseNUMA -XX:+UseG1GC -XX:+ResizeTLAB -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp
New behavior:
The value for the tez.am.launch.cmd-opts and tez.task.launch.cmd-opts properties is changed to include the add-opens command option in service.sdl for TEZ.
The value for these properties is now changed to:
-XX:+PrintGCDetails -verbose:gc -XX:+UseNUMA -XX:+UseG1GC -XX:+ResizeTLAB -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -XX:+IgnoreUnrecognizedVMOptions --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED"