accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ryan Leary (JIRA)" <>
Subject [jira] [Created] (ACCUMULO-3044) ConditionalMutation should support conditional updates
Date Mon, 04 Aug 2014 20:56:12 GMT
Ryan Leary created ACCUMULO-3044:

             Summary: ConditionalMutation should support conditional updates
                 Key: ACCUMULO-3044
             Project: Accumulo
          Issue Type: Improvement
          Components: client, tserver
    Affects Versions: 1.6.0
            Reporter: Ryan Leary

Currently, the ConditionalMutation object operates on a single row, and applies updates if
and only if a set of Conditions are met. 

A new type of ConditionalMutation which operates on a single row and applies an update if
and only if a set of Conditions for that particular update would be more flexible.

This behavior is possible currently by creating a new ConditionalMutation for each update.
In the case where there are a large number of updates for a single row, however, there is
a steep penalty paid due to the row-level locking. Another acceptable solution to this ticket
would be optimizing the ConditionalWriter to apply multiple conditional mutations on the same
row within the same atomic lock. The order of execution would need to be guaranteed.

The API would look something like:
ConditionalMutation cm = new ConditionalMutation(rowKey);
cm.put(Iterable<Condition>, CF, CQ, CV, Val);

This message was sent by Atlassian JIRA

View raw message