Fixed Issues in Apache Kudu

Review the list of Apache Kudu issues that are resolved in Cloudera Runtime 7.2.18.

CDPD-64527: Unable to place replicas using range aware logic with multiple locations
This patch fixes a bug that caused the master to crash when attempting to place replica using range aware replica placement logic.
KUDU-3500: Optimization to skip operations timed out in the prepare queue
Enhances tablet server efficiency by immediately responding with a TimedOut error for write operations that expire in the prepare queue, thus improving load handling and adding a new metric to track such occurrences.
KUDU-3520: Fix file descriptor leak in data-at-rest encryption
Fixed a file descriptor leak in PosixEnv related to encryption setup failures, ensuring cleanup in error scenarios.
KUDU-3515: Resolved Unbounded Range Partition Dropping Issue
Fixed an incompatibility issue that prevented dropping unbounded range partitions in tables with combined hash and range partitioning upon upgrading to Kudu 1.17.0, ensuring seamless partition management.
KUDU-3495: Fix for handling upsert requests with outdated client schemas
This update resolves an issue where upsert requests from clients using outdated schemas could unintentionally reset newly added columns to default values by initializing the tablet_isset_bitmap during request decoding.
KUDU-3489: Support large messages for Subprocess communication protocol
Kudu now supports messages of size up to 8MB by default to be transmitted between Kudu master and subprocess server. This is necessary to make Ranger authz policies work in a Kudu cluster with many tables.
KUDU-3461: Improved stability for Kudu clients with error handling for invalid tablet IDs
To prevent Impala daemon crashes due to stack overflow, Kudu C++ clients now detect invalid tablet ID conditions and return an error, enhancing system stability during concurrent operations.
KUDU-3459: Enhanced superblock download mechanism
Introduced a new feature, controlled by --tablet_copy_support_download_superblock_in_batch, to download superblock in segments, addressing issues with large superblocks exceeding the --rpc_max_message_size limit.
KUDU-3455: Enhanced hash partition pruning efficiency in clients
This enhancement reduces memory usage and accelerates hash partition pruning for in-list predicates in both Kudu C++ and Java clients, offering performance improvements with minimal memory requirements.
KUDU-3448: Secure storage for IPKI and TSK key material
Enhances security by encrypting IPKI and TSK key material on disk using a password-derived symmetric key, allowing for secure integration with hardware security modules or other password provision methods without storing the password on disk.
KUDU-3402: Update trace-viewer
Kudu tracing.html now works with modern browser versions.
KUDU-3359: Allow multi-JAR classpaths for Ranger client
In order to let Ranger client write audit to HDFS, Hadoop client JARs need to be loaded. To make sure this is possible to do, this fix changes the behavior of the ranger_jar_path to allow colon-separated JAR classpaths to be passed to Java.

Apache Patch Information

  • KUDU-3532
  • KUDU-3520
  • KUDU-3515
  • KUDU-3500
  • KUDU-3495
  • KUDU-3489
  • KUDU-3461
  • KUDU-3459
  • KUDU-3455
  • KUDU-3448
  • KUDU-3402
  • KUDU-3359