milleruntime commented on a change in pull request #261:
URL: https://github.com/apache/accumulo-website/pull/261#discussion_r567904923
##########
File path: _posts/release/2020-01-19-accumulo-2.1.0.md
##########
@@ -7,12 +7,50 @@ draft: true
## Notable Changes
+### Compaction Changes
+
+Significant changes were made to how Accumulo compacts files in this release.
See
+{% dlink administration/compaction %} for details, below are some highlights.
+
+ * Multiple concurrent compactions per tablet on disjoint files is now
+ supported. Previously only a single compaction could run on a tablet. This
+ allows tablets that are running long compactions on large files to
+ concurrently compact new smaller files that arrive.
+ * Multiple compaction thread pools per tablet server are now supported.
+ Previously only a single thread pool existed within a tablet server for
+ compactions. With a single thread pool, if all threads are working on long
+ compactions it can starve quick compactions. Now compactions with little
+ data can be processed by dedicated thread pools.
+ * Accumulo's default algorithm for selecting files to compact was modified to
+ select the smallest set of files that meet the compaction ratio criteria
+ instead of the largest set. This change makes tablets more aggressive about
+ reducing their number files while still doing logarithmic compaction work.
+ This change also enables efficiently compacting new small files that arrive
+ during a long running compaction.
+ * Having dedicated compaction threads pools for tables is now supported
+ through configuration. The default configuration for Accumulo sets up
+ dedicated thread pools for compacting the Accumulo metadata table.
+ * Merging minor compactions were dropped. These were added to Accumulo to
+ address the problem of new files arriving while a long running compaction
+ was running. Merging minor compactions could cause O(N^2) compaction work.
+ The new compaction changes in this release can satisfy this use case while
+ doing a logarithmic amount of work.
+
+Accumulo has a pluggable user interface called CompactionStrategy, it was
+deprecated in this release and replaced with new interfaces in the public API.
+The javadocs for CompactionStrategy have more detailed information about its
+deprecation. CompactionStrategy transitively referenced many Accumulo types
+that are not public API. Therefore it is extremely difficult to know if
+compactions strategies written for one release of Accumulo will work with a
+later release. The new interfaces that replace CompactionStrategy only use
+public API types making it easier to write code that works across releases.
Review comment:
The last paragraph could be shorter. It could just say:
```suggestion
"The CompactionStrategy interface was deprecated in favor of new interfaces
in the public
API. The javadocs for CompactionStrategy have more detailed information
about its deprecation.
```
If the javadoc already includes the deprecation justification, just include
a link to the javadoc.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]