Re: Tid scan improvements - Mailing list pgsql-hackers

From David Rowley
Subject Re: Tid scan improvements
Date
Msg-id CAKJS1f9Rd1nYmk4AX+EZ09jCzxaYS9dQey3CuM3kKyTwFZjQYg@mail.gmail.com
Whole thread Raw
In response to Re: Tid scan improvements  (Edmund Horner <ejrh00@gmail.com>)
Responses Re: Tid scan improvements
List pgsql-hackers
On Thu, 14 Mar 2019 at 21:12, Edmund Horner <ejrh00@gmail.com> wrote:

> I'm not sure how an unreasonable underestimation would occur here.  If
> you have a table bloated to say 10x its minimal size, the estimator
> still assumes an even distribution of tuples (I don't think we can do
> much better than that).  So the selectivity of "ctid >= <last ctid
> that would exist without bloat>" is still going to be 0.9.

Okay, think you're right there.  I guess the only risk there is just
varying tuple density per page, and that seems no greater risk than we
have with the existing stats.

Just looking again, I think the block of code starting:

+ if (density > 0.0)

needs a comment to mention what it's doing. Perhaps:

+ /*
+ * Using the average tuples per page, calculate how far into
+ * the page the itemptr is likely to be and adjust block
+ * accordingly.
+ */
+ if (density > 0.0)

Or some better choice of words.  With that done, I think 0001 is good to go.

-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services


pgsql-hackers by date:

Previous
From: "Matsumura, Ryo"
Date:
Subject: RE: Is PREPARE of ecpglib thread safe?
Next
From: Kyotaro HORIGUCHI
Date:
Subject: Re: Timeout parameters