Re: [HACKERS] [COMMITTERS] pgsql: Fix cardinality estimates for parallel joins. - Mailing list pgsql-hackers

From Robert Haas
Subject Re: [HACKERS] [COMMITTERS] pgsql: Fix cardinality estimates for parallel joins.
Date
Msg-id CA+TgmoYBPiXHCCf3EzFshyc1fk4NkY636PaiAWH4rL1U0x6h-w@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] [COMMITTERS] pgsql: Fix cardinality estimates for parallel joins.  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: [HACKERS] [COMMITTERS] pgsql: Fix cardinality estimates for parallel joins.  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
On Tue, Jan 17, 2017 at 11:49 AM, Robert Haas <robertmhaas@gmail.com> wrote:
> On Mon, Jan 16, 2017 at 7:23 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
>> On Sat, Jan 14, 2017 at 12:07 AM, Robert Haas <rhaas@postgresql.org> wrote:
>>> Fix cardinality estimates for parallel joins.
>>>
>>
>> +       /*
>> +        * In the case of a parallel plan, the row count needs to represent
>> +        * the number of tuples processed per worker.
>> +        */
>> +       path->rows = clamp_row_est(path->rows / parallel_divisor);
>>     }
>>
>>     path->startup_cost = startup_cost;
>> @@ -2014,6 +1996,10 @@ final_cost_nestloop(PlannerInfo *root, NestPath *path,
>>     else
>>         path->path.rows = path->path.parent->rows;
>>
>> +   /* For partial paths, scale row estimate. */
>> +   if (path->path.parallel_workers > 0)
>> +       path->path.rows /= get_parallel_divisor(&path->path);
>>
>>
>> Isn't it better to call clamp_row_est in join costing functions as we
>> are doing in cost_seqscan()?  Is there a reason to keep those
>> different?
>
> No, those should probably be changed to match.

So I guess that'd look something like this?

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Attachment

pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: [HACKERS] Re: [COMMITTERS] pgsql: Add test case for two phasecommit. Also by Masahiko Sawada.
Next
From: Robert Haas
Date:
Subject: Re: [HACKERS] Gather Merge