Hi,

Thank you for working on this - I'll be running it through my own benchmarks as well.

On 8/18/26 04:14, Richard Guo wrote:
Here is v3 of this patchset.

But first, in v3-0001 `create_partial_unique_paths()` builds `partial_unique_rel` via memcpy from `input_rel` but never resets the `unique_keys` field. Unlike the structural fields memcpy legitimately carries over, `uniquekeys` describes uniqueness of this specific rel's output - same category as rows/reltarget/pathlist, which the function already resets - so it should be reset too rather than silently inherited from `input_rel`. It's harmless today since nothing reads it there, but it's the kind of state field a future no-op check could pick up and use wrongly.

planner.c: create_partial_unique_paths()
```
 partial_unique_rel->cheapest_parameterized_paths = NIL;
+partial_unique_rel->uniquekeys = NIL;

 /* Estimate number of output rows */
```

--
Best regards,
Ilia Evdokimov,
Tantor Labs LLC,
https://tantorlabs.com/

Reply via email to