Re: Sequential Scan Index Bug - Mailing list pgsql-bugs

From Gabriel Weinberg
Subject Re: Sequential Scan Index Bug
Date
Msg-id 000a01c41ca6$233b8a70$0900a8c0@yegg
Whole thread Raw
In response to Re: Sequential Scan Index Bug  (Bruno Wolff III <bruno@wolff.to>)
Responses Re: Sequential Scan Index Bug  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
List pgsql-bugs
Yes, I thought I had done that, but now that I figured out what was going
on, I did it for all cases.  So it is no longer occurring for me, but it
still seems like a bug in PostgreSQL.  I would expect it to throw an error
immediately, instead of scanning the table for a value of a different type.
In my case, the table is huge, so it really put a hamper on the system.

Gabriel

_________________
Gabriel Weinberg
yegg@alum.mit.edu=20

-----Original Message-----
From: Bruno Wolff III [mailto:bruno@wolff.to]=20
Sent: Wednesday, April 07, 2004 1:38 AM
To: Gabriel Weinberg
Cc: pgsql-bugs@postgresql.org
Subject: Re: Sequential Scan Index Bug


On Sat, Apr 03, 2004 at 13:51:56 -0500,
  Gabriel Weinberg <yegg@alum.mit.edu> wrote:
>=20
> I have a table with an integer column with about 10M rows in it.
>=20
> This column has an index (btree).
>=20
> When I try to select a row using this column with an integer, e.g.=20
> select * from table where id=3D4, it always uses the index.  However, if=
=20
> I select try to select a row using this column with a decimal, e.g.=20
> select * from table where id=3D4.343, it skips the index entirely and=20
> does a sequential scan of the table.
>=20
> I am using v7.4.2 on Freebsd 4.9.

Depending on what you want to do, you probably either want to cast the value
to an int explicitly or combine that with a test (using a stable
function) to make sure the number is actually an integer.

pgsql-bugs by date:

Previous
From: Jiang Wei
Date:
Subject: INSERT INTO ... SELECT
Next
From: Stephan Szabo
Date:
Subject: Re: Sequential Scan Index Bug