Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-3044

ConditionalMutation should support conditional updates

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Abandoned
    • 1.6.0
    • None
    • client, tserver
    • None

    Description

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

      Attachments

        Activity

          People

            Unassigned Unassigned
            ryanleary Ryan Leary
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: