I found the pid of the postgres process that was consuming all the CPU. I turned the stats back on (and reloaded the conf file), but when I query pg_stat_activity I get nothing back. No records.
> I turned off stats collector, and any row stat collectors, and I > increased the number of check points since I have been getting the > error about check point switches being to frequent. Postgres now uses a > bit less CPU (60-90%), which is still a lot considering that no > processing is being done. Is there anything else I can do to lower this > CPU utilization? Is there a way I can pinpoint exactly what part of > postgres is using this CPU?
something is seriously wrong. Fire up the task manager and determine the pid of the process that is sucking cpu. Then query pg_stat_activity to determine who/what is doing it (you will have to restore stats). consider setting statement logging to get the exact offender.