Tema: Re: apache child procesai
Autorius: saimhe
Data: 2012-02-17 13:25:05
> as net nezinodamas tikros situacijos, galiu bent tris variantus sugalvoti, kodel kodas gali buti nekoreguotinas.

   Realus atvejis. Extentionas nuosavas, bet naudoja svetimą biblioteką,
kuri nebesupportinama. Nuo heap sugadinimo joje, kuris nutinka kartą į
kelias savaites, pakimba visas Apache. Kaip vėliau paaiškėjo, bugą
galbūt būtume pamatę, jei turėtume kvalifikacijos ir valios darytis
tos bibliotekos analogą. Bugas atsitiktinai išlindo (pasitaikė jį
garantuotai atkartojantys duomenys) tik po trijų metų. Iki tol teko
biblioteką naudojančią dalį apiforminti kaip atskirą procesą -- jei
nulūžta, tai bent viso Apache paskui save nenusineša.
   Neatsimenu, ar buvo bandymų papildomai testuoti failus, su kuriais
nulūžta (loguose tie nulūžimai matėsi). Iš idėjos, prisirinkus daug
tokių failų ir Apache+PHP+extention paleidus su Valgrind, šansų būtų
daugiau -- pagautų ir nežymų buffer overrun, nuo kurio garantuoto
nulūžimo nėra.

-- 
  saimhe