Skip site navigation (1) Skip section navigation (2)

Re: reltuples value less than rows in the table.

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: "parul" <i(dot)parultyagi(at)gmail(dot)com>, <pgsql-performance(at)postgresql(dot)org>
Subject: Re: reltuples value less than rows in the table.
Date: 2011-08-25 14:43:46
Message-ID: (view raw or whole thread)
Lists: pgsql-performance
parul <i(dot)parultyagi(at)gmail(dot)com> wrote:
> I have a index in a table. The value of the reltuples value in the
> pg_class table for this index is less than the number of rows in
> the table where the index is present.
> For eg. if i have 800 rows in the table , the reltuples in the
> pg_class for the index show the value as 769.
> What are the scenarios under which this kind of behaviour occurs?
The fine manual explains it here:
To quote:
| Number of rows in the table. This is only an estimate used by the
| planner. It is updated by VACUUM, ANALYZE, and a few DDL commands
| such as CREATE INDEX.
Other operations which affect the number of rows in the table won't
change this column, so it can be off by a bit until the next
autovacuum or explicit operation which sets a new estimate.
> Also iam not able to execute the queries involving the indexed
> column in the where clause.
Are you saying that you expect that a plan would have been chosen
which would have used the index, but it is choosing some other plan?
If so, your best bet is to present the actual query.

In response to

pgsql-performance by date

Next:From: Tasdassa AsdasdaDate: 2011-08-29 09:13:39
Subject: Performance with many updates
Previous:From: MirrorXDate: 2011-08-25 00:32:35
Subject: Re: How to track number of connections and hosts to Postgres cluster

Privacy Policy | About PostgreSQL
Copyright © 1996-2015 The PostgreSQL Global Development Group