Re: planner/optimizer question - Mailing list pgsql-performance

From Tom Lane
Subject Re: planner/optimizer question
Date
Msg-id 23032.1083126479@sss.pgh.pa.us
Whole thread Raw
In response to planner/optimizer question  (brad-pgperf@duttonbros.com)
Responses Re: planner/optimizer question  ("Gary Doades" <gpd@gpdnet.co.uk>)
List pgsql-performance
brad-pgperf@duttonbros.com writes:
> ... Wouldn't the most efficient plan be to scan the index regardless
> of crm_id because the only columns needed are in the index?

No.  People coming from other databases often have the misconception
that queries can be answered by looking only at an index.  That is never
true in Postgres because row validity info is only stored in the table;
so we must always visit the table entry to make sure the row is still
valid/visible for the current query.

Accordingly, columns added to the index that aren't constrained by the
WHERE clause are not very useful ...

            regards, tom lane

pgsql-performance by date:

Previous
From: Christopher Kings-Lynne
Date:
Subject: Re: [JDBC] is a good practice to create an index on the
Next
From: "Gary Doades"
Date:
Subject: Re: planner/optimizer question