Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-3139

Add thread-safe KuduPartitioner::PartitionRow() method

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Not A Problem
    • None
    • NA
    • client

    Description

      We have a scenario in IMPALA-9782 where we'd like to have multiple threads use KuduPartitioner, but this currently requires instantiating many instances, which is somewhat expensive. It would be a good improvement if we could share the KuduPartitioner. This currently doesn't work because PartitionRow() internally uses a buffer that's a member of the object - https://github.com/cloudera/kudu/blob/master/src/kudu/client/partitioner-internal.cc#L40

      I talked with aserbin on slack and he suggested that adding a new method that is not stateful would be a good way to solve this (I also considered cloning KuduPartitioner).

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              tarmstrong Tim Armstrong
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: