>> I had almost given up on using Postgres for this system because under
>> Solaris, it just couldn't cut it (MySQL could do the work with one CPU
>> while Postgres took up even more CPU and required *both* CPUs to be
>> enabled), but when we moved the system to a Linux box, things worked
>> much better.
> Ah, back to a PostgreSQL topic. :-)
> My guess on this one is that Solaris is slower for PostgreSQL because
> process switching is _much_ heavier on Solaris than other OS's.
If this is 7.1, another fairly likely possibility is that the fsync
method being used for the WAL log needs to be changed on the Solaris
box. The reason we have so many options is that some methods are way
slower than others on certain platforms --- but we don't yet have
anything in there to pick the right method for a given platform.
Could you experiment with WAL_SYNC_METHOD on the Solaris system
and see if your results change?
regards, tom lane