Github user keith-turner commented on a diff in the pull request:

    https://github.com/apache/accumulo/pull/22#discussion_r26574837
  
    --- Diff: 
server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/Tablet.java ---
    @@ -2548,7 +2565,8 @@ public void compactAll(long compactionId, 
UserCompactionConfig compactionConfig)
         boolean updateMetadata = false;
     
         synchronized (this) {
    -      if (lastCompactID >= compactionId)
    +      // ACCUMULO-3645 compaction may generate results if there is a 
compaction-scope iterator
    +      if (lastCompactID >= compactionId && 
compactionConfig.getIterators().isEmpty())
    --- End diff --
    
    If lastCompactID >= compactionId then should not do anything.  When master 
receives compaction request it increments counter in zookeeper.   When a tablet 
compacts, it records the compaction id in metadata.   Master keeps asking 
tablets to compact until all tablets are counter are >= the zookeeper value.   
This change could lead to tablet compacting multiple times for a single user 
compaction request with iters.


---
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