On PG 9.1 and 9.2 I'm running the following query:
SELECT     *FROM     stream_store JOIN    (        SELECT             
UNNEST(stream_store_ids) AS id        FROM             
stream_store_version_index         WHERE             stream_id = 607106 AND     
       version = 11    ) AS records USING (id)ORDER BY     id DESC
This takes several (10 to 20) milliseconds at most.
When I add a LIMIT 1 to the end of the query, the query time goes to several 
hours(!).
The full version String of PG 9.1 is "PostgreSQL 9.1.5 on 
x86_64-unknown-linux-gnu, compiled by gcc-4.4.real (Debian 4.4.5-8) 4.4.5, 
64-bit". The 9.1 machine is a socket 771 dual quad core at 3.16Ghz with 64GB 
memory and 10 Intel x25M SSDs in a RAID5 setup on 2 ARECA 1680 RAID 
controllers. The "stream_store" table has 122 million rows and is partitioned. 
The array that's being unnested for the join has 27 entries.
Any idea?                                         

Reply via email to