Sometimes breaking the query down using nested cursors can help, especially if the query has many joins. It usually makes behavior more predicatable anyway. -----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Merlin Moncure Sent: Thursday, December 06, 2007 2:43 PM To: Weber, Geoffrey M. Cc: pgsql-general@xxxxxxxxxxxxxx Subject: Re: Continual Postgres headaches... On Dec 6, 2007 2:22 PM, Weber, Geoffrey M. <Geoffrey.Weber@xxxxxxxxxxxxx> wrote: > In my efforts to correct these consistency in execution problems, I have > gone from vacuuming (with analyze) twice a day to every 30 minutes (how long > it takes a vacuum analyze to run - another seeming problem because it > shouldn't take so long?). I've done a VACUUM FULL and that sometimes helps, > but obviously is not a long-term solution for a true OLTP system. Why I > said "sometimes helps": earlier this week I did a VACUUM FULL, VACUUM > ANALYZE on the entire schema. A query that was supposed to use the 25MB > index above (that matched the parameters of the partial index exactly) was > still not doing so. I had to DROP and re-CREATE the index (and do another > ANALYZE) to get the database to (correctly) use the index. you may want to consider using autovacuum. vacuum full is usually not recommended. maybe you could post some explain analyze of some queries that are giving you problems? merlin ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org/ ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings