> sort_mem = 1024
> shared_buffers = 2048 (tried higher, but didnt' seem to improve anything)
> max_connections = 300
>
> error message just comes out of the blue, the database is chugging along
> happily and then suddenly[4059] DEBUG: connection startup failed (fork
> failure): Resource temporarily unavailable
> [4059] DEBUG: connection startup failed (fork failure): Resource
> temporarily unavailable
> [4059] DEBUG: could not launch checkpoint process (fork failure): Resource
> temporarily unavailable
> [4059] DEBUG: connection startup failed (fork failure): Resource
> temporarily unavailable
> [4059] DEBUG: connection startup failed (fork failure): Resource
> temporarily unavailable
Sounds like fork returning EAGAIN.
What does ulimit -a show for the postgres user?