Segfault with large Apache

From: Date: Tue, 04 Jan 2000 04:05:51 +0000
Subject: Segfault with large Apache
Groups: php.version4 
Request: Send a blank email to php-version4+get-8891@lists.php.net to get a copy of this message
I'm trying to get up a development server at work with all sorts of general goodies, since most of our web stuff is all over the place. I got Apache 1.3.9 and mod_ssl 2.4.9 (openssl 0.9.4), compiled in as DSO's. I added in mod_perl 1.21 just fine as a DSO, and it works great. It's a fairly beefy server, and we have Postgres, Mysql, Oracle 8i, and DB2 all installed (all latest versions). The configure script run for php4 was: ./configure --enable-track-vars \ --enable-bcmath \ --enable-debugger \ --with-mysql=/usr/local/mysql \ --with-pgsql=/usr/local/pgsql \ --with-ibm-db2=/usr/local/db2/V6.1 \ --with-oracle=/usr/local/oracle-8i/product/8.1.5 \ --with-zlib \ --with-java=/usr/local/jdk-1.1.8-blackdown/ \ --with-ttf \ --with-gd \ --with-ftp \ --with-apxs=/usr/local/apache/bin/apxs I did notice that it apparently failed on the db2 support, the compiliation was missing the -L/usr/local/db2/V6.1/lib. A touchup on the Makefile and it went through fine. When Apache restarts, it forks and segfaults. strace goes through all the loading of the php4 modules and the database libs, then loads ssl, and I can see it read the next line of httpd.conf, where it apparently segfaults for no reason. Here's the last few lines of strace: 32454 open("/usr/local/apache/libexec/libssl.so", O_RDONLY) = 5 32454 fstat(5, {st_mode=S_IFREG|0755, st_size=924730, ...}) = 0 32454 read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 u\2\000"..., 4096) = 4096 32454 mmap(NULL, 800912, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x4119c000 32454 mprotect(0x41250000, 63632, PROT_NONE) = 0 32454 mmap(0x41250000, 49152, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0xb3000) = 0x 41250000 32454 mmap(0x4125c000, 14480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1 , 0) = 0x4125c000 32454 close(5) = 0 32454 mprotect(0x4119c000, 737280, PROT_READ|PROT_WRITE) = 0 32454 mprotect(0x4119c000, 737280, PROT_READ|PROT_EXEC) = 0 32454 read(4, "as.\n# . On SCO (ODT 3) use \"Use"..., 4096) = 4096 32454 --- SIGSEGV (Segmentation fault) --- gdb doesn't help much, it keeps saying the program exits normally. The thing that bugs me it the reading of the next line, which seems fine. I'm thoroughly stumped on this one. The architecture is intel x86, 128M of ram, SCSI, etc, running Mandrake Linux 6.1 (RedHat derivitave). Are there any known problems with my current setup? I'd rather not downgrade to php3, and I need all the database drivers for development. Any ideas? --Jeff

« previous php.version4 (#8891) next »