Joel Fradkin wrote:
Basically the question was why would a view use an indexed search on one
result set but a seq search on a larger result set. Same view only
difference is how many rows are returned. The large result set was doing a
seq search and did not return after several minutes. The same sql ran in 135
seconds on my MSSQL system.

Accessing an index 1000 times then reading 1000 rows may be slower than just reading a whole table of 2000 rows.


You can examine what PostgreSQL thinks the query will cost by running an explain: EXPLAIN ANALYSE SELECT ...
This will display two sets of figures for each stage, the expected costs and the actual.


Finally, make sure your configuration settings are reasonable. Read through the guide at:
http://www.varlena.com/varlena/GeneralBits/Tidbits/index.php


There's a -performance list that specialises in dealing with these issues. If you post there, mention you've tuned as per GeneralBits and provide an example of the query, view definition and the output from explain.

--
  Richard Huxton
  Archonet Ltd

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to