From: | Jim Nasby <decibel(at)decibel(dot)org> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Estimation error in n_dead_tuples |
Date: | 2007-02-02 06:03:09 |
Message-ID: | 017466B3-56C8-4B9F-97BC-48934B8C6361@decibel.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Feb 1, 2007, at 10:57 AM, Tom Lane wrote:
> ITAGAKI Takahiro <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> writes:
>> I'm thinking to add "the number of vacuumed tuples" to the message
>> from
>> vacuum. The stats collector will subtract the value from
>> n_dead_tuples
>> instead of setting it to zero. This is also needed if we want to make
>> some kinds of "partial" vacuum methods.
>
> This seems awfully dangerous to me, because then you are operating on
> dead reckoning forever: there will be nothing that can correct an
> inaccurate rowcount estimate, and in practice that means it will
> diverge
> arbitrarily far from reality :-(, because of the inherent inaccuracies
> of the stats system. I think the risk of that is far worse than the
> relatively small (or at least bounded) error arising from tuples not
> seen by vacuum.
Yeah, it'd be better for vacuum to send a message stating how many
dead rows it couldn't remove, ala:
DETAIL: 0 dead row versions cannot be removed yet.
Granted, not perfect, but better than what we have now.
--
Jim Nasby jim(at)nasby(dot)net
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)
From | Date | Subject | |
---|---|---|---|
Next Message | Jeremy Drake | 2007-02-02 06:16:54 | Re: writing new regexp functions |
Previous Message | Jim Nasby | 2007-02-02 05:57:41 | Performance penalty of visibility info in indexes? |