12.28.05
詭異的 eAccelerator
從幾個禮拜?我就在我的 BBS 個人???, 我的 Apache 啟動後??了多久就會狂噴這種訊?到 error log 裡 :
[warn] (32)Broken pipe: write pipe_of_death
而且 child process 的數??會一直增加, ?會減少.
如果我沒記錯的話, 這串訊?出?在我把 2.0.54 ?? 2.0.55 以後.
所以當時我是決定把 2.0.55 ?? 2.2 .
很?幸的, 狀?並沒有變動, 訊??然存在.
我一直以為是 Apache 的?題, 直到我在昨天看到 這篇 ???然大悟.
很明顯的, 罪??首是 eAccelerator , ?題出在 debug.c 這支程?的這段:
void ea_debug_shutdown ()
{
fflush (F_fp);
fclose (F_fp);
F_fp = NULL;
}
把 fclose (F_fp); ?? if (F_fp != stderr) fclose (F_fp); , ?新 compile & install 就沒事了.
如果是用 FreeBSD 的 ports 安?的人?以把 這個 patch 檔 抓回去放在 /usr/ports/www/eaccelerator/files 底下, 然後用 portupgrade -f 或??一??就?以解決.
話說回來, 這種 bug 還真是讓人無言以?啊………..