Re: Indexes with condition using immutable functions applied to column not used - Mailing list pgsql-performance

From Jesper Krogh
Subject Re: Indexes with condition using immutable functions applied to column not used
Date
Msg-id 4D50D16A.1060802@krogh.cc
Whole thread Raw
In response to Indexes with condition using immutable functions applied to column not used  (Sylvain Rabot <sylvain@abstraction.fr>)
Responses Re: Indexes with condition using immutable functions applied to column not used
List pgsql-performance
On 2011-02-08 01:14, Sylvain Rabot wrote:
> CREATE INDEX directory_id_user_mod_cons_hash_0_btree_idx ON mike.directory USING btree (id_user) WHERE
__mod_cons_hash(id_user,4) = 0; 
> CREATE INDEX directory_id_user_mod_cons_hash_1_btree_idx ON mike.directory USING btree (id_user) WHERE
__mod_cons_hash(id_user,4) = 1; 
> CREATE INDEX directory_id_user_mod_cons_hash_2_btree_idx ON mike.directory USING btree (id_user) WHERE
__mod_cons_hash(id_user,4) = 2; 
> CREATE INDEX directory_id_user_mod_cons_hash_3_btree_idx ON mike.directory USING btree (id_user) WHERE
__mod_cons_hash(id_user,4) = 3; 
>

> mike=# EXPLAIN ANALYZE SELECT * FROM directory WHERE id_user = 4;

Should be written as:
select * from directory where __mod_cons_hash(id_user,4) = 4%4;

Then it  should just work.

--
Jesper

pgsql-performance by date:

Previous
From: Scott Marlowe
Date:
Subject: Re: Really really slow select count(*)
Next
From: Achilleas Mantzios
Date:
Subject: Re: Talking about optimizer, my long dream