← Back to team overview

sslug-teknik team mailing list archive

Re: Not enough memory - BANG!

 

Klaus S. Madsen <sslug@xxxxxxxxxxxxxxxx> wrote:

> On Tue, Oct 15, 2002 at 12:39:09AM +0200, Lars Lerager Hansen wrote:
> > > > Hvad er der foregået når en server er gået ned med beskeden:
> > > > "Not enough memory - killing pid 6312" skrevet til konsollen?
> > > > Det var intet at se i loggen.
> > >
> > > Du kører flere (eller: større) processer end din hukommelse
> > > (fysisk + virtuel) berettiger til. Problemet løses ved at tilføje
> > > mere swap.
> >
> > Jamen Linux burde da ikke fejle så grusomt? Burde systemet ikke
> > lukke ned for processer der løber løbsk på den måde? Eller har de
> > frit spil så længe man ikke har sat en hård grænse vha. ulimit?
> Formentlig er maskinen også igang med at forsøge at slå en process
> ihjel, for at få mere RAM.
>
> Desværre er det langt fra trivielt at slå den korrekte process ihjel,
> af flere grunde.

Nej, det er klart. Fra et maskinesynspunkt er det jo umuligt at afgøre
hvilken process det er mest "korrekt" at slå ihjel.
Problemet var at den tilsyneladende var gået i uendelig løkke, den stod hele
tiden og forsøgte at slå det samme pid ihjel.

> Jeg har ofte set en maskine stå og skrive "Killing PID xxx -
> httpd" ud i konsollen, med det resultat at næste gang apache kommer
> til, laver den en ny process (fordi den kan se at den anden gik ned),
> og så vælger OOM-killeren den nye process næste gang, og så er vi
> nået lige vidt ;-)

Det ser næsten ud som om det var det der skete.

> Jeg håber at ovenstående bare giver en smule mening, og måske også
> forklarer hvorfor det ikke nødvendigvis er så simpelt som man lige
> skulle tro :-)

Åh, jo bestemt - meget pædagogisk :-)


Mvh. Lars




Follow ups

References