Apache segfault

Daniel Mr?z beorn w send.gromada.pl
Wto, 6 Lis 2001, 09:58:28 CET


Wiadomosc poszla przez pomylke do Kloczka zamiast na liste...
Przepraszam za duplikaty.

On Tue, Nov 06, 2001 at  8:00:27 +0100, Tomasz K?oczko wrote:
>>> 6821  close(16)                         = 0
>>> 6821  munmap(0x797000, 39124)           = 0
>> [...]
>>> 6821  --- SIGSEGV (Segmentation fault) ---
>> Dużo to nie robi... może jeszcze ltrace?
> Lepszy byłby już strace lub back trace z uruchomienai httpd bez 
> forkowania.
Hmmm... Nie jestem teraz w stanie zrobic bt gdyz mam zestripowane
binarki i brak czasu na rekompilacje httpd. Back trace ze stripow
konczy sie na:

Program received signal SIGSEGV, Segmentation fault.
0x001a25b4 in dlopen () from /lib/libc.so.6

...czyli niewiele. Strace bez forkowania konczy sie jak z forkowaniem:
munmap... munmap... munmap... bum.
Blad jest raczej w PHP... Posiedzialem troche nad tym i zrobilem maly
test:

[root w is root]# php
<?php
        print("Zaraz sie wykrzacze...\n");
        exit;
?>
X-Powered-By: PHP/4.0.6
Content-type: text/html

Zaraz sie wykrzacze...
php: dl-close.c:158: _dl_close: Assertion `imap->l_type == lt_loaded || imap->l_opencount > 0' failed.
Aborted

Po wywaleniu modulu imap z php.ini wynik jest inny:

Zaraz sie wykrzacze...
php: dl-close.c:118: _dl_close: Assertion `new_opencount[0] == 0'
failed.
Aborted

Skrypt jest wykonywany bez bledow dopiero po wywaleniu modulu odbc
i z takimi ustawieniami Apache startuje i dziala z modulem php4.
Nie mam niestety czasu na przetrzasanie zrodel php-imap i php-odbc.
Pakiet php, php-imap, php-odbc i php-cgi w wersji 4.0.6-3. Oprocz tego
zaladowane moduly: dba, filepro, ldap, pcre, sockets, zlib, bcmath,
dbase, ftp, mcrypt, gd, gettext, mhash, recode, sysvshm, posix.
Wszystkie w wersji 4.0.6-3.

I jescze jedna sprawa (nie zwiazana raczej z powyzsza). Na innej
maszynie, Apache dziala ladnie, dopoki nie trzeba odpalic jakiegos
skryptu PHP. Wtedy, od czasu do czasu strona nie jest wysylana w
calosci, a w error_log pojawia sie tylko:

[Tue Nov  6 08:04:43 2001] [notice] child pid 24626 exit signal
Segmentation fault (11)

Wadliwy sprzet wykluczam, gdyz wszystko inne dziala bez bledow
(lacznie z wczesniejszymi wersjami Apache + PHP4). Podejrzewam blad
w php-pgsql, poniewaz takie kwiatki dzieja sie w przypadku skryptow
korzystajacych z bazy postgresowej (7.1.3). Nie ma tam zadnych
udziwnien, tylko pg_exec(), pg_fetch_row() w petlach, pg_freeresult()
i pg_close().


Pozdrawiam
Beorn

--
----------------------------------------------------------------------
Daniel `Beorn' Mróz      <beorn w alpha.pl>       http://127.0.0.1/beorn
GCS/E d-(pu) s-:- a--@ C++++ UL++++$ P+++ L+++ E--- X W+>++ N+++ o? K-
w--- O M- V- PS PE- !Y PGP+ t- 5- R tv-- b+ DI++ D+++ G++ e h+ r--- y?
----------------------------------------------------------------------



Więcej informacji o liście dyskusyjnej pld-devel-pl