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

Conditional Mutation with 1000 conditions is slow.

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.6.0
    • Component/s: client, tserver
    • Labels:
      None

      Description

      The random walk test for conditional mutations creates a conditional mutation with 1000 conditions. I noticed this was really slow.

      I did some further testing using MiniAccumulo and was seeing times around 1300ms to 1400ms for this operation (the conditions all checked for absence and all data for the tablet was in memory).

      I traced the problem down to parsing the iterator config. Iterating over the table config, filtering non iterator props, and parsing was taking a little more than a 1ms. I modifed TableConfiguration to cache the iterator props and saw my test times drop to 120ms to 130ms.

        Attachments

        1. 0001-ACCUMULO-1859-experimental.patch
          8 kB
          Keith Turner
        2. 0002-ACCUMULO-1859-experimental.patch
          19 kB
          Keith Turner
        3. CWPTest.java
          2 kB
          Keith Turner

          Issue Links

            Activity

              People

              • Assignee:
                kturner Keith Turner
                Reporter:
                kturner Keith Turner
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: