[ 
https://issues.apache.org/jira/browse/ACCUMULO-420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13281295#comment-13281295
 ] 

Keith Turner commented on ACCUMULO-420:
---------------------------------------

There is a flaw in my logic above that has nothing to do with zookeeper 
consistency.  The following interleaving will lead to the tserver seeing the 
udpated compaction count but not the iterators.  This is what I do not want to 
happen.

 # Tserver : get compaction iterators from zookeeper
 # FATE OP : set compaction iterators in zookeeper
 # FATE OP : increment compaction counter in zookeeper
 # Tserver : get compaction counter in zookeeper

I think the solution is to have the compaction count node in zookeeper include 
the iterators.   When the compaction count is incremented, iterators are also 
appended.   When a compaction finishes, its iterators are removed from the 
compaction count.  This can be achieved safely using the zookeeper compare and 
set mechanism for setting the count + iterators.  The tablet server only has 
one node to read from zookeeper so there is no consistency issue. 
                
> Allow per compaction iterator settings
> --------------------------------------
>
>                 Key: ACCUMULO-420
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-420
>             Project: Accumulo
>          Issue Type: New Feature
>            Reporter: Keith Turner
>            Assignee: Sapan Shah
>             Fix For: 1.5.0
>
>
> It may be useful to allow the compact command to specify an iterator to be 
> used for that compaction.  For example if someone wanted to apply a filter 
> once to a table, they could force a compaction with that filter.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to