Re: same plan, add 1 condition, 1900x slower - Mailing list pgsql-performance

From Tom Lane
Subject Re: same plan, add 1 condition, 1900x slower
Date
Msg-id 18120.1131718624@sss.pgh.pa.us
Whole thread Raw
In response to Re: same plan, add 1 condition, 1900x slower  (Richard Huxton <dev@archonet.com>)
Responses Re: same plan, add 1 condition, 1900x slower  (Mitch Skinner <mitch@egcrc.net>)
List pgsql-performance
Richard Huxton <dev@archonet.com> writes:
> Mitch Skinner wrote:
>> The version with the condition is definitely doing more I/O.  The
>> version without the condition doesn't read at all.

> Does external_id_map really have 15 million rows? If not, try a VACUUM
> FULL on it. Be prepared to give it some time to complete.

Please don't, actually, until we understand what's going on.

The thing is that the given plan will fetch every row indicated by the
index in both cases, in order to check the row's visibility.  I don't
see how an additional test on a non-indexed column would cause any
additional I/O.  If the value were large enough to be toasted
out-of-line then it could cause toast table accesses ... but we're
speaking of a char(3).

            regards, tom lane

pgsql-performance by date:

Previous
From: Tom Lane
Date:
Subject: Re: same plan, add 1 condition, 1900x slower
Next
From: Mitch Skinner
Date:
Subject: Re: same plan, add 1 condition, 1900x slower