Re: forced sequential scan when condition has current_user - Mailing list pgsql-performance

From Fernando Hevia
Subject Re: forced sequential scan when condition has current_user
Date
Msg-id 2C6DE1FB86AB4DFD9B8D19853E7F5560@iptel.com.ar
Whole thread Raw
In response to forced sequential scan when condition has current_user  (Keresztury Balázs <balazs@gaslightmusic.hu>)
Responses Re: forced sequential scan when condition has current_user  (Keresztury Balázs <balazs@gaslightmusic.hu>)
List pgsql-performance

> -----Mensaje original-----
> De: Keresztury Balázs
>
> hi,
>
> just a small question: is it normal that PostgreSQL 8.4.1
> always uses sequential scanning on any table when there is a
> condition having the constant "current_user"? Of course there
> is a btree index set on that table, but the DBMS just doesn't
> want to utilize it. When I replace current_user to any
> string, the planner uses the index normally.
>
> I can demonstrate it with the following simple query:
>
> SELECT psz.kotesszam FROM projekt.projektszervezet psz WHERE
> psz.felhasznalo_id = current_user;
>

Probably you are comparing different types. Try explicitly casting
current_user to text:

SELECT psz.kotesszam FROM projekt.projektszervezet psz WHERE
psz.felhasznalo_id = current_user::text




pgsql-performance by date:

Previous
From: Brad Nicholson
Date:
Subject: Re: DB is slow until DB is reloaded
Next
From: Andy Colson
Date:
Subject: Re: pg_connect takes 3.0 seconds