Hi, On Thu, May 27, 2021 at 2:30 AM Zhihong Yu <z...@yugabyte.com> wrote: >> >> Hi, Amit: > > > For ConvertTupleToPartition() in > 0001-ExecFindPartition-cache-last-used-partition-v3.patch: > > + if (tempslot != NULL) > + ExecClearTuple(tempslot); > > If tempslot and parent_slot point to the same slot, should ExecClearTuple() > still be called ?
Yeah, we decided back in 1c9bb02d8ec that it's necessary to free the slot if it's the same slot as a parent partition's PartitionDispatch->tupslot ("freeing parent's copy of the tuple"). Maybe we don't need this parent-slot-clearing anymore due to code restructuring over the last 3 years, but that will have to be a separate patch. I hope the attached updated patch makes it a bit more clear what's going on. I refactored more of the code in ExecFindPartition() to make this patch more a bit more readable. -- Amit Langote EDB: http://www.enterprisedb.com
0002-ExecPartitionCheck-pre-compute-partition-key-express.patch
Description: Binary data
0001-ExecFindPartition-cache-last-used-partition-v4.patch
Description: Binary data