Re: select on 22 GB table causes "An I/O error occured while sending to the backend." exception

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: david(at)lang(dot)hm
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andrew Sullivan <ajs(at)commandprompt(dot)com>, pgsql-performance(at)postgresql(dot)org
Subject: Re: select on 22 GB table causes "An I/O error occured while sending to the backend." exception
Date: 2008-08-28 18:07:18
Message-ID: 1219946838.22237.26.camel@jdavis
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Wed, 2008-08-27 at 23:23 -0700, david(at)lang(dot)hm wrote:
> there are periodic flamefests on the kernel mailing list over the OOM
> killer, if you can propose a better algorithm for it to use than the
> current one that doesn't end up being just as bad for some other workload
> the kernel policy can be changed.
>

Tried that: http://lkml.org/lkml/2007/2/9/275

All they have to do is *not* count shared memory against the process (or
at least not count it against the parent of the process), and the system
may approximate sanity.

> IIRC the reason why it targets the parent process is to deal with a
> fork-bomb type of failure where a program doesn't use much memory itself,
> but forks off memory hogs as quickly as it can. if the OOM killer only
> kills the children the problem never gets solved.

But killing a process won't free shared memory. And there is already a
system-wide limit on shared memory. So what's the point of such a bad
design?

Regards,
Jeff Davis

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Craig James 2008-08-28 18:12:14 Re: select on 22 GB table causes "An I/O error occured while sending to the backend." exception
Previous Message Jeff Davis 2008-08-28 17:51:16 Re: select on 22 GB table causes "An I/O error occured while sending to the backend." exception