accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-3176) Add ability to create a table with user specified initial properties
Date Wed, 22 Oct 2014 16:55:34 GMT

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

Josh Elser commented on ACCUMULO-3176:
--------------------------------------

(pulling [this comment|https://issues.apache.org/jira/browse/ACCUMULO-3089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14179944#comment-14179944]
from ACCUMULO-3089 since it's relevant here)

{quote}
Sean Busbey wrote:
I moved ACCUMULO-3176 to be a subtask so it would be clearer what I considered covered by
my objections (this ticket and its subtasks) ...
{quote}

[~busbey] can you clarify your objections on this specific issue for me? I'd actually like
to see this done (perhaps with some more follow on now that I think about it). I believe it
lays the ground work to squash race conditions WRT delays in ZooKeeper watcher firing in systems
with more than one tabletserver, most notably with configuration of iterators/combiners.

For example, the following code is subject to a race condition of the necessary tservers seeing
the configuration update from ZK before running the scan.

{code}
Connector conn = getConnector();
conn.tableOperations().create("foo");
conn.tableOperations().attachIterator("foo", new IteratorSetting(50, MyIterator.class));
BatchWriter bw = conn.createBatchWriter("foo", new BatchWriterConfig());
List<Mutation> mutations = getMutations();
bw.addMutations(mutations);
bw.close();
List<Entry<Key,Value>> data = Lists.newArrayList(conn.createScanner("foo"));
{code}

If the properties (in this case, iterator configuration) are set when the table is created,
there isn't a race condition. There is no opportunity for a tserver to read the table configuration
before the iterators are configured and perform some operation before the ZK Watcher fires
to update the cached table configuration (ZooCache) on this tserver.

> Add ability to create a table with user specified initial properties
> --------------------------------------------------------------------
>
>                 Key: ACCUMULO-3176
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3176
>             Project: Accumulo
>          Issue Type: Sub-task
>            Reporter: Jenna Huston
>            Assignee: Jenna Huston
>
> This change would allow for table properties to be set before the default tablet is created.
 Instead of just adding a new create method, a NewTableConfiguration class could be created
and passed and the other create methods deprecated.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message