This is an automated email from the ASF dual-hosted git repository. dlmarion pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/accumulo-website.git
The following commit(s) were added to refs/heads/main by this push: new 3e109b601 Started on 2.1.4 release notes (#454) 3e109b601 is described below commit 3e109b6013d63e3336a19c1164c8e27b27dfce64 Author: Dave Marion <dlmar...@apache.org> AuthorDate: Wed Apr 9 17:09:51 2025 -0400 Started on 2.1.4 release notes (#454) Started on draft release notes for the upcoming 2.1.4 release. Co-authored-by: Christopher Tubbs <ctubb...@apache.org> --- _posts/release/2025-04-08-accumulo-2.1.4.md | 111 ++++++++++++++++++++++++++++ 1 file changed, 111 insertions(+) diff --git a/_posts/release/2025-04-08-accumulo-2.1.4.md b/_posts/release/2025-04-08-accumulo-2.1.4.md new file mode 100644 index 000000000..fe77205ab --- /dev/null +++ b/_posts/release/2025-04-08-accumulo-2.1.4.md @@ -0,0 +1,111 @@ +--- +title: Apache Accumulo 2.1.4 +sortableversion: '02.01.04' +draft: true +LTM: true +--- +## About + +Apache Accumulo 2.1.4 is a patch release of the 2.1 LTM line. It contains bug +fixes and minor enhancements. This version supersedes earlier 2.1 releases +and users upgrading to 2.1 should upgrade directly to this version instead of +any prior 2.1 release. + +## Notable Changes + +* {% ghi 5446 %} Many dependencies were updated, to include protobuf-java which + was updated from 3.22.0 to 3.25.6 due to a vulnerability. Users may run into + a runtime exception added in https://github.com/protocolbuffers/protobuf/pull/20084 + when using old generated Protobuf files. Users may need to address any compatibility issues + with this version of protobuf-java, if their code also makes use of this library. +* {% ghi 5073 %} {% ghi 5034 %} Added `accumulo check-accumulo-properties` command that can be + run before an instance is initialized to check the properties file. +* {% ghi 5193 %} Added `accumulo admin signalShutdown` command to signal the server + process to initiate a graceful shutdown. Compactors will finish the major compaction + that they are currently working on, then will exit. Scan Servers will return a busy + signal to all clients for new scan requests, and will shutdown when all in-progress + scans have closed. Tablet Servers will signal the Manager that they are shutting down, + which should prevent assignment of tablets to that server, then they will unload all + tablets and shut down. The Monitor, Manager, GarbageCollector, and CompactionCoordinator + will shut down also. The last step in the shutdown process for all servers is to remove + their lock in ZooKeeper. +* {% ghi 5438 %} Added `accumulo upgrade --prepare` command which should be used after + shutting down an instance in preparation for an upgrade. This will check that no Fate + transactions exist, delete any ZooKeeper locks for server processes, and prohibit any + server processes from being started. +* {% ghi 4898 %} New way to compute bulk load plans (TODO: Needs text) +* {% ghi 5169 %} {% ghi 5170 %} The TabletServer will halt itself when a walog write or + minc failure occurs and the TabletServer lock is not held in ZooKeeper. +* {% ghi 5145 %} {% ghi 5132 %} The Manager and TabletServer processes now have a background + thread that can be enabled via the property `general.server.lock.verification.interval` to + validate that the process is holding the lock in ZooKeeper. The existing mechanism of relying + on a Watcher to notify the process that the lock has been lost can be a problem due to the + fact that there is a single thread in the ZooKeeper client that fires Watcher events. If the + thread is currently waiting on a hung Watcher, then subsequent Watcher events will not fire + and could leave the server running without a lock. +* {% ghi 5174 %} Improvements to the `accumulo-cluster` and `accumulo-service` scripts have been + backported from the main branch. This includes syntax changes. Users should review the scripts + for changes that may effect them. + +### Configuration Improvements + +* {% ghi 4723 %} {% ghi 5239 %} Changes to properties `tserver.session.idle.max` and + `tserver.session.update.idle.max` no longer require a TabletServer restart. +* {% ghi 5397 %} {% ghi 5399 %} Added property `gc.threads.delete.wal` to control the number of threads to use for + deleting write-ahead logs and recovery files. +* {% ghi 5341 %} Created an optimization in Bulk Import v2 to enable faster processing of bulk import files + when loading into a sparse set of tablets in a large table. See new table property `table.bulk.metadata.skip.distance`. + +### Notable Bug Fixes + +* {% ghi 5033 %} {% ghi 5038 %} Group names in cluster.yaml must conform to bash variable name rules + or an error will be raised when parsing the cluster.yaml file. +* {% ghi 5221 %} The shell will now print to stdout, instead of stderr, when there is no terminal set. This + will help with piping the output of the shell to other commands such as grep. +* {% ghi 5396 %} Modified `accumulo-cluster` to stop GC and ScanServer processes first when stopping the + cluster. These processes write to the metadata table, which can lead to slower shutdown times. +* {% ghi 4868 %} {% ghi 4871 %} Fixed listscans so that it shows a scan session id for batch scans instead + of always showing zero. +* {% ghi 4845 %} InstanceOperations.getActiveCompaction(String) did not handle the address of a + Compactor process being passed in the parameter. This has been fixed. +* {% ghi 5445 %} The `cf` and `cq` options for the DeleteMany and Grep shell commands were not being + handled properly. + +### Metrics Improvements + +* {% ghi 4756 %} {% ghi 4757 %} {% ghi 4840 %} Added metric to indicate how many zombie scan threads are running + in the TabletServer. +* {% ghi 5011 %} Added queue tag to metrics emitted from the External Compactor processes. +* {% ghi 5025 %} {% ghi 4922 %} Added property `general.micrometer.log.metrics` to enable metrics on + the log4j2 or logback logging frameworks. Disabled by default. + +### Other Improvements + +* {% ghi 4755 %} {% ghi 5220 %} Fixed the help flag for the admin command so that it works for subcommands. +* {% ghi 4819 %} Tablets that are closing will no longer wait on scans to complete. Instead they + will try to interrupt the scan and then continue closing the tablet so that it can be migrated. + It's possible that a zombie scan thread could remain in the TabletServer, if the scan thread is + blocked on something and does not die. Users should monitor the new zombie scan metric mentioned + in the section above. +* {% ghi 4867 %} Lowered the memory burden of listing a large number of External Compactors in the Monitor. +* {% ghi 5026 %} Modified CompactionJobPrioritizer.createPriority to give a higher priority to tablets that + have more files than the maximum number of files per tablet. +* {% ghi 5400 %} Modified AESCryptoService to prevent the creation of overlapping streams. + +## Requirements + +Accumulo 2.1.4 now requires JDK 17 to build, but still supports Java 11 runtime. + +## Upgrading + +View the [Upgrading Accumulo documentation][upgrade] for guidance. + +## Useful Links + +* [All Changes since 2.1.3][all-changes] +* [All tickets related to this release][milestone] + + +[upgrade]: /docs/2.x/administration/upgrading +[milestone]: https://github.com/apache/accumulo/milestone/21 +[all-changes]: https://github.com/apache/accumulo/compare/rel/2.1.3...apache:rel/2.1.4