This is an automated email from the ASF dual-hosted git repository.

mmiller pushed a commit to branch 1.10
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/1.10 by this push:
     new c259914115 Disable Merging MINC by default (#2708)
c259914115 is described below

commit c259914115b80b4442eb9670608b6df1c6b2c0c0
Author: Mike Miller <mmil...@apache.org>
AuthorDate: Tue May 24 17:38:39 2022 +0000

    Disable Merging MINC by default (#2708)
    
    * Merging minor compactions can lead to bad situations where a Tablet
    can't flush. They have been removed in version 2.1. This change makes
    the default value of table.compaction.minor.merge.file.size.max 1 byte,
    which should disable merging minc by default.
    * Here is the situation where a Tablet couldn't flush: An overwhelmed 
tserver hosting a hot spot Tablet was hitting its max WAL limit 
(TABLE_MINC_LOGS_MAX) so it was forcing a flush on the Tablet. The 
TabletServerBatchWriter would try to flush its data by calling applyUpdates() 
to the current commit session. The flush would timeout on the tserver, 
presumably due to hitting max number of write threads and/or connection pools 
filling up. A HoldTimeoutException would be thrown on the cli [...]
---
 core/src/main/java/org/apache/accumulo/core/conf/Property.java | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/core/src/main/java/org/apache/accumulo/core/conf/Property.java 
b/core/src/main/java/org/apache/accumulo/core/conf/Property.java
index 8dd0b6932c..6321a52322 100644
--- a/core/src/main/java/org/apache/accumulo/core/conf/Property.java
+++ b/core/src/main/java/org/apache/accumulo/core/conf/Property.java
@@ -683,10 +683,10 @@ public enum Property {
       "After a tablet has been idle (no mutations) for this time period it may 
have its "
           + "in-memory map flushed to disk in a minor compaction. There is no 
guarantee an idle "
           + "tablet will be compacted."),
-  TABLE_MINC_MAX_MERGE_FILE_SIZE("table.compaction.minor.merge.file.size.max", 
"0",
+  TABLE_MINC_MAX_MERGE_FILE_SIZE("table.compaction.minor.merge.file.size.max", 
"1",
       PropertyType.MEMORY,
-      "The max file size used for a merging minor compaction. The default 
value"
-          + " of 0 disables a max file size."),
+      "The max file size used for a merging minor compaction. The value of 0 
is no max "
+          + "file size. The default value is 1 byte, which should disable 
merging minor compactions."),
   TABLE_SCAN_MAXMEM("table.scan.max.memory", "512K", PropertyType.MEMORY,
       "The maximum amount of memory that will be used to cache results of a 
client query/scan. "
           + "Once this limit is reached, the buffered data is sent to the 
client."),

Reply via email to