Github user joshelser commented on a diff in the pull request:

    https://github.com/apache/accumulo/pull/47#discussion_r40052540
  
    --- Diff: 
core/src/main/java/org/apache/accumulo/core/iterators/Combiner.java ---
    @@ -313,4 +378,46 @@ public static void setColumns(IteratorSetting is, 
List<IteratorSetting.Column> c
       public static void setCombineAllColumns(IteratorSetting is, boolean 
combineAllColumns) {
         is.addOption(ALL_OPTION, Boolean.toString(combineAllColumns));
       }
    +
    +  public static enum DeleteHandlingAction {
    +    /**
    +     * Do nothing when a a delete is observed by a combiner during a 
partial major compaction.
    +     */
    +    IGNORE,
    +
    +    /**
    +     * Log an error when a a delete is observed by a combiner during a 
partial major compaction. An error is not logged for each delete entry seen. 
Once a
    +     * combiner has seen a delete during a partial compaction and logged 
an error, it will not do so again for at least an hour.
    +     */
    +    LOG_ERROR,
    +
    +    /**
    +     * Throw an exception when a a delete is observed by a combiner during 
a partial major compaction.
    +     */
    +    THROW_EXCEPTION,
    +
    +    /**
    +     * Pass all data through during partial major compactions, no reducing 
is done. With this option reducing is only done during scan and full major
    +     * compactions, when deletes can be correctly handled.
    +     */
    +    REDUCE_ON_FULL_COMPACTION_ONLY
    +  }
    +
    +  /**
    +   * Combiners may not work correctly with deletes. Sometimes when 
Accumulo compacts the files in a tablet, it only compacts a subset of the 
files. If a delete
    --- End diff --
    
    Great writeup.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to