Apache Accumulo 2.1.1

19 Jun 2023

About

Apache Accumulo 2.1.1 is a patch release of the 2.1 LTM line. It contains many bug fixes and minor enhancements, including a critical fix. This version supersedes 2.1.0. Users upgrading to 2.1 should upgrade directly to this version instead of 2.1.0.

Included here are some highlights of the most interesting bugs and features fixed in 2.1.1. Several trivial bugs were also fixed that related to the presentation of information on the monitor, or to avoid spammy/excessive logging, but are too numerous to list here. For the full set of bug fixes, please see the commit history or issue tracker.

NOTE: This 2.1 release also includes any applicable bug fixes and improvements that occurred in 1.10.3 and earlier.

Critical Fixes

  • CVE-2023-34340 Fixed a critical issue that improperly allowed a user under some conditions to authenticate to Accumulo using an invalid password.

Notable Improvements

Improvements that add capabilities:

  • #3180 Enable users to provide per-volume Hadoop Filesystem configuration overrides via the Accumulo configuration. Hadoop Filesystem objects are configured by the standard Hadoop mechanisms (default configuration, core-site.xml, hdfs-site.xml, etc.), but these configuration files don’t allow for the same property to be specified with different values for different namespaces. This change allows users to specify different property values for different Accumulo volumes, which will be applied to the Hadoop Filesystem object created for each Accumulo volume
  • #1169, #3142 Add configuration option for users to select how the last location field is used, so users have better control over initial assignments on restarts
  • #3400 Inject environment injected into ContextClassLoaderFactory SPI so implementations can read and make use of Accumulo’s own configuration

Improvements that affect performance:

  • #3175 Reset number of locks in SynchronousLoadingBlockCache from 2017 back to 5003, the value that it was in 1.10. #3226 Also, modified the lock to be fair, which allows the different scan threads in the server to make progress in a more fair manner when they need to load a block into the cache
  • #3077, #3079, #3083, #3123 Avoid filling OS page cache by calling setDropBehind on the FS data stream when performing likely one-time file accesses, as with WAL and compaction input and output files. This should allow files that might benefit more from caching to stay in the cache longer. #3083 and #3123 introduces new properties, table.compaction.major.output.drop.cache and table.compaction.minor.output.drop.cache, for dropping pages from the OS page cache for compaction output files. These changes will only have an impact on HDFS FileSystem implementations and operating systems that support the underlying OS system call. See associated issue, HDFS-16864, that will improve the underlying implementation when resolved.

Improvements that help with administration:

  • #3445 Add emergency maintenance utility to edit properties in ZooKeeper while the Accumulo cluster is shut down
  • #3118 Added option to the admin zoo-info-viewer command to dump the ACLs on ZooKeeper nodes. This information can be used to fix znodes with incorrect ACLs during the upgrade process

Other notable changes:

  • #3126 Remove unintentionally bundled htrace4 from our packaging; users will need to provide that for themselves if they require it on their classpath
  • #3436 Deprecate gc.trash.ignore property. The trash can be customized within Hadoop if one wishes to ignore it, or configure it to be ignored for only specific files (and this has been tested with recent versions of Hadoop); In version 3.0, this property will be removed, and it will no longer be possible to ignore the trash by changing this property

Notable Bug Fixes

  • #3134 Fixed Thrift issues due to incorrect setting of maxMessageSize
  • #3144, #3150, #3164 Fixed bugs in ScanServer that prevented a tablet from being scanned when some transient failures occurred
  • #3346, #3366 Fixed tablet metadata verification task so it doesn’t unintentionally cause the server to halt
  • #3479 Fixed issue preventing servers from shutting down because they were still receiving assignments
  • #3492 Fixed a bug where bulk imports could cause compactions to hang

Upgrading

View the Upgrading Accumulo documentation for guidance.

2.1.1 GitHub Project

All tickets related to 2.1.1.


View all releases in the archive