You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "John Vines (JIRA)" <ji...@apache.org> on 2013/07/12 19:31:49 UTC

[jira] [Commented] (ACCUMULO-1568) Make configuration changes Atomic

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

John Vines commented on ACCUMULO-1568:
--------------------------------------

I think zookeeper transactions are used for writes, not reads, but I could be mistaken. This helps to mitigate this possibility, but I don't think it would prevent a client from having a partial view.

However, if we're concerned about partial views, then this could more easily be accomplished by changing the way we store the iterators in zookeeper, but that has it's own issues. If we flatten all iterators and settings to a single znode we can guarantee everything is in sync, but then there's the race condition in the read/modify/write, but that can be handled by stat versions.
                
> Make configuration changes Atomic
> ---------------------------------
>
>                 Key: ACCUMULO-1568
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1568
>             Project: Accumulo
>          Issue Type: Bug
>            Reporter: Keith Turner
>             Fix For: 1.6.0
>
>
> I have not seen this issue, but its something I thought of.  Assume the following happens.
>  * iterators I1 ... I10 are configured to Table T1 at time 1
>  * iterators NI1 ... NI10 are configured to Table T1 at time 2
>  * compaction is reading iterator config and reads I1 ... I5  and NI4 ... NI9, a combination of the two iterator configurations w/o NI10, this could be really bad.
> Seems like this could be solved by use of Zookeeper transactions.   The Accumulo API will need to change to allow setting many iterators or config settings at once.
>  
>  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira