On 22/1/2022 01:34, Tomas Vondra wrote:
The other thing we could do is reduce the coefficient gradually - so it'd be 1.5 for the first pathkey, then 1.25 for the next one, and so on. But it seems somewhat arbitrary (I certainly don't have some sound theoretical justification ...).
I think, it hasn't a reason to increase complexity without any theory at the bottom. Simple solution allows to realize problems much faster, if they arise.
... I've skipped the path_save removal in planner.c, because that seems incorrect - if there are multiple pathkeys, we must start with the original path, not the modified one we built in the last iteration. Or am I missing something
You are right, I misunderstood the idea of path_save variable. -- regards, Andrey Lepikhov Postgres Professional