On Fri, Dec 09, 2005 at 02:29:02PM +0100, Baldur Norddahl wrote: > I noticed that sometimes we seem to have a problem with simple queries > that take a long time to execute. For example "select * from config > where key='abc'" which normally only takes a few milliseconds, but in > some rare cases suddenly takes 10-30 seconds. > > It is a production system, so there are always other queries going on. > But the server is not neccessarly loaded when this happens. I can't > think of any reasons that there should be a lock on the tables in question. Do you know there's a lock or is that just a guess? > Is there a way to find out what the query is waiting for? Query pg_locks in another session and look for rows where "granted" is false; if you find any then look for who holds the conflicting lock. If you have stats_command_string enabled then you might be able to query pg_stat_activity and identify the query that holds the lock. Do you see any pattern to the slow queries? Do they always happen around a certain time of day, or during or shortly after a certain kind of activity (e.g., large inserts or routine database maintenace)? -- Michael Fuhr