demurcia@ockham-solutions.fr writes:
> After a little while (probably after the analyze), the query plan is changed
> and only 2 results are returned !
> "Merge Join (cost=33.31..39.69 rows=1 width=24)"
> " Merge Cond: (i.numero_id = n.numero_id)"
> ...
> " -> Index Only Scan using numero_pkey on numero n (cost=0.00..12.57
> rows=2 width=8)"
> " Index Cond: (numero_id = ANY ('{25393,25384}'::bigint[]))"
Yeah, there's a known bug in 9.2 with mergejoins whose inner side is an
indexscan with an =ANY condition. There's a fix here, if you're able to
apply a patch:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=f2366e584aea41b980f23fcf0a2e118efd7fb09b
Otherwise, the fix will be in 9.2.2.
regards, tom lane