From: | Holger Marzen <holger(at)marzen(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: index use again and again |
Date: | 2002-02-12 15:38:23 |
Message-ID: | Pine.LNX.4.44.0202121636150.18491-100000@bluebell.marzen.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Tue, 12 Feb 2002, Tom Lane wrote:
> Holger Marzen <holger(at)marzen(dot)de> writes:
> > Are 152428 rows not enough to use the index?
>
> More like "there are too many rows to use the index".
>
> You've got a query that is estimated to hit 22322/152428 = 15% of the
> table. If the rows in question are uniformly scattered through the
> table then the system will certainly have to read every block of the
> table to get them all. It may as well read the table sequentially,
> rather than do the extra I/O to read the index too.
You're right. When the result is small, the index is used. When the
number of rows is a little bit higher and postgres uses a table scan,
the query is much slower. The table is not very unordered. Can I force
postgres to raise the limit where it starts scanning the whole table?
--
PGP/GPG Key-ID:
http://blackhole.pca.dfn.de:11371/pks/lookup?op=get&search=0xB5A1AFE1
From | Date | Subject | |
---|---|---|---|
Next Message | Denis Perchine | 2002-02-12 15:38:50 | Re: Index on timestamp field, and now() |
Previous Message | Tom Lane | 2002-02-12 15:34:55 | Re: Index on timestamp field, and now() |