odd 503

PSS

Well-Known Member
#1
I have set all limits to extreme, but still I get 503 error after script has processed 15 minutes (900 seconds). PHp does not give any errors. MySQL keeps going.

Debug messages at the exact moment when 503 happens are:

[uds://tmp/lshttpd/lsphp.sock] No Request has been processed successfully through this connection, the maximum connections allowed will be reduced!

[xxx.xxx.xxx.xxx:61621-0#xxxxxxxxxx.xxx:lsapi] HttpExtConnector::tryRecover()...

My test case is repairing (fixing indexes) lots of big tables (7.5 million rows) with latest phpmyadmin using latest Firefox. After the litespeed gives up mysql keeps processsing the command happily under hood.

How should I set litespeed up so that in no case a php script connection is "dropped out" like this? I find all the settings very confusing, if 4000 second timeouts are not honored what should I do?

My settings are:

Server -> External App -> phpLsapi

Name phpLsapi
Address uds://tmp/lshttpd/lsphp.sock
Notes Not Set
Max Connections 60
Environment PHP_LSAPI_MAX_REQUESTS=5000
PHP_LSAPI_CHILDREN=60
Initial Request Timeout (secs) 4000
Retry Timeout (secs) 0
Persistent Connection Not Set
Connection Keepalive Timeout Not Set
Response Buffering No
Auto Start Yes
Command $SERVER_ROOT/fcgi-bin/lsphp -c ../php
Back Log 100
Instances 1
Run On Start Up Yes
Max Idle Time Not Set
Priority 0
Memory Soft Limit (bytes) 200M
Memory Hard Limit (bytes) 200M
Process Soft Limit 0
Process Hard Limit 0


Server -> Tuning -> connection

Max Connections 2000
Max SSL Connections 200
Connection Timeout (secs) 3600
Max Keep-Alive Requests 1000
Smart Keep-Alive No
Keep-Alive Timeout (secs) 7
Send Buffer Size (bytes) 0
Receive Buffer Size (bytes) 0
I/O Event Dispatcher epoll (Linux 2.6 kernel)
Max Cached Small File Size (bytes) 4096
Total Small File Cache Size (bytes) 200M
Max MMAP File Size (bytes) 256K
Total MMAP Cache Size (bytes) 400M
Use sendfile() Yes
SSL Hardware Accelerator (built-in) OpenSSL internal engine


php.ini has

max_execution_time = 3600
max_input_time = 60
memory_limit = 128M

Took APC offlline, one less variable to debug.


PS. I would like to set different timeout rules for each virtual host (high timeouts for the one I use for admin stuff, low for public site). Because virtual servers do not have individual connection timeout setting I am forced to put high value in server tuning setting and that means less tolerance to DoS for the public site.
 

mistwang

LiteSpeed Staff
#2
Timeout configuration looks fine, maybe it is not a timeout issue.
Please make sure the PHP memory limit has not been hit.
Is the lsphp process still running after getting the 503 error? It might be PHP internal problem. Maybe the socket connection between PHP and MySQL timed out.
You can strace the lsphp process to give you a better idea what is wrong.

For adjusting timeout for each vhost, we will put it on our todo list.
 

PSS

Well-Known Member
#3
Timeout configuration looks fine, maybe it is not a timeout issue.
Please make sure the PHP memory limit has not been hit.
I get no php error messages. Is there a way to find it out any other way?

Is the lsphp process still running after getting the 503 error? It might be PHP internal problem. Maybe the socket connection between PHP and MySQL timed out.
You can strace the lsphp process to give you a better idea what is wrong.

For adjusting timeout for each vhost, we will put it on our todo list.
The process tree looked like

Code:
   11045 	root 	15:27 	./lshttpd
      11048 	root 	15:27 	lscgid
      11049 	nobody 	15:27 	./lshttpd
         11051 	nobody 	15:27 	lsphp -c ../php
         11894 	nobody 	15:35 	admin_php
      11050 	nobody 	15:27 	./lshttpd
         11428 	nobody 	15:30 	lsphp -c ../php
            12040 	nobody 	15:36 	lsphp -c ../php
      11052 	nobody 	15:27 	./lshttpd
         11624 	nobody 	15:32 	lsphp -c ../php
            11625 	nobody 	15:32 	lsphp -c ../php
      11053 	nobody 	15:27 	./lshttpd
I tried strace (never used that, I program only php :)) while it was running. I just guessed which PID's to follow.


[root@main includes]# /usr/bin/strace -p 11052
Process 11052 attached - interrupt to quit
epoll_wait(7, {}, 256, 100) = 0
recvfrom(6, 0x7fff06ec372f, 1, 2, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)
epoll_wait(7, {}, 256, 100) = 0
epoll_wait(7, {}, 256, 100) = 0
epoll_wait(7, {}, 256, 100) = 0
epoll_wait(7, {}, 256, 100) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=3543, ...}) = 0
stat("/opt/lsws/logs/access.log", {st_mode=S_IFREG|0644, st_size=216576, ...}) = 0
stat("/opt/lsws/logs/error.log", {st_mode=S_IFREG|0644, st_size=2835, ...}) = 0
stat("/opt/lsws/logs/stderr.log", {st_mode=S_IFREG|0644, st_size=11720, ...}) = 0
open("/tmp/lshttpd/.rtreport.3.tmp", O_WRONLY|O_CREAT|O_TRUNC, 0644) = 14
fstat(14, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
fcntl(14, F_SETFD, FD_CLOEXEC) = 0
write(14, "VERSION: LiteSpeed Web Server/En"..., 64) = 64
write(14, "BPS_IN: 0, BPS_OUT: 0, SSL_BPS_I"..., 216) = 216
write(14, "REQ_RATE [xxxxx.net"..., 82) = 82
write(14, "REQ_RATE [xxxxx.net]: REQ"..., 76) = 76
write(14, "REQ_RATE [_AdminVHost]: REQ_PROC"..., 71) = 71
write(14, "REQ_RATE [Example]: REQ_PROCESSI"..., 67) = 67
write(14, "EXTAPP [LSAPI] [] [phpLsapi]: CM"..., 147) = 147
write(14, "EOF\n", 4) = 4
close(14) = 0

(repeating indefinitely)


and

[root@main includes]# /usr/bin/strace -p 11024
attach: ptrace(PTRACE_ATTACH, ...): No such process
[root@main includes]# /usr/bin/strace -p 11624
Process 11624 attached - interrupt to quit
select(1, [0], NULL, NULL, {0, 839000}) = 0 (Timeout)
kill(11052, SIG_0) = 0
select(1, [0], NULL, NULL, {1, 0}) = 0 (Timeout)
kill(11052, SIG_0) = 0

and

[root@main includes]# /usr/bin/strace -p 11428
Process 11428 attached - interrupt to quit
select(1, [0], NULL, NULL, {0, 583000}) = 0 (Timeout)
kill(11050, SIG_0) = 0
select(1, [0], NULL, NULL, {1, 0}) = 0 (Timeout)
kill(11050, SIG_0) = 0



Php process 11625 change pid all the time and just gave:

[root@main includes]# /usr/bin/strace -p 12681
Process 12681 attached - interrupt to quit
read(4, <unfinished ...>
Process 12681 detached


Just

read(4,

and nothing else, like it was hanged.





Now the script simply stopped and gave blank page at 10 minutes, and I got logged

2007-06-28 15:45:53.250 NOTICE [AutoRestarter] child process with pid=11050 received signal=11, a core file is created!
2007-06-28 15:45:53.282 NOTICE [AutoRestarter] cleanup children processes and unix sockets belong to process 11050 !
2007-06-28 15:45:53.383 NOTICE [AutoRestarter] child process with pid=11052 received signal=11, a core file is created!
2007-06-28 15:45:53.388 NOTICE [AutoRestarter] cleanup children processes and unix sockets belong to process 11052 !


and I did as you adviced in http://litespeedtech.com/support/forum/showthread.php?t=1041&highlight=core+dump

[root@main bak_core]# gdb /opt/lsws/bin/lshttpd core.11050
GNU gdb Red Hat Linux (6.5-16.el5rh)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...Using host libthread_db library "/lib64/libthread_db.so.1".

Reading symbols from /lib64/libm.so.6...done.
Loaded symbols for /lib64/libm.so.6
Reading symbols from /lib64/libc.so.6...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/libcrypt.so.1...done.
Loaded symbols for /lib64/libcrypt.so.1
Reading symbols from /lib64/libdl.so.2...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libnss_files.so.2...done.
Loaded symbols for /lib64/libnss_files.so.2
Core was generated by `./lshttpd'.
Program terminated with signal 11, Segmentation fault.
#0 0x0000003df2675330 in strlen () from /lib64/libc.so.6
(gdb) bt
#0 0x0000003df2675330 in strlen () from /lib64/libc.so.6
#1 0x0000003df2645b88 in vfprintf () from /lib64/libc.so.6
#2 0x0000003df266669a in vsnprintf () from /lib64/libc.so.6
#3 0x0000000000468903 in log4cxx::patternLayout::format ()
#4 0x0000000000467b3e in log4cxx::Appender::append ()
#5 0x0000000000467ed9 in log4cxx::Logger::vlog ()
#6 0x0000000000434036 in HttpLog::debug ()
#7 0x000000000044cf5a in HttpConnection::processNewReq ()
#8 0x000000000044d8cb in HttpConnection::eek:nReadEx ()
#9 0x000000000044125b in HttpIOLink::eek:nReadT ()
#10 0x0000000000440bab in HttpIOLink::handleEvents ()
#11 0x0000000000466056 in epoll::waitAndProcessEvents ()
#12 0x000000000043a8b7 in EventDispatcher::run ()
#13 0x0000000000418091 in HttpServerImpl::start ()
#14 0x0000000000407ec9 in LshttpdMain::main ()
#15 0x0000000000404e21 in main ()
(gdb) quit



[root@main bak_core]# gdb /opt/lsws/bin/lshttpd core.11052
GNU gdb Red Hat Linux (6.5-16.el5rh)
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...Using host libthread_db library "/lib64/libthread_db.so.1".

Reading symbols from /lib64/libm.so.6...done.
Loaded symbols for /lib64/libm.so.6
Reading symbols from /lib64/libc.so.6...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/libcrypt.so.1...done.
Loaded symbols for /lib64/libcrypt.so.1
Reading symbols from /lib64/libdl.so.2...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libnss_files.so.2...done.
Loaded symbols for /lib64/libnss_files.so.2
Core was generated by `./lshttpd'.
Program terminated with signal 11, Segmentation fault.
#0 0x0000003df2675330 in strlen () from /lib64/libc.so.6
(gdb) bt
#0 0x0000003df2675330 in strlen () from /lib64/libc.so.6
#1 0x0000003df2645b88 in vfprintf () from /lib64/libc.so.6
#2 0x0000003df266669a in vsnprintf () from /lib64/libc.so.6
#3 0x0000000000468903 in log4cxx::patternLayout::format ()
#4 0x0000000000467b3e in log4cxx::Appender::append ()
#5 0x0000000000467ed9 in log4cxx::Logger::vlog ()
#6 0x0000000000434036 in HttpLog::debug ()
#7 0x000000000044cf5a in HttpConnection::processNewReq ()
#8 0x000000000044d8cb in HttpConnection::eek:nReadEx ()
#9 0x000000000044125b in HttpIOLink::eek:nReadT ()
#10 0x0000000000440bab in HttpIOLink::handleEvents ()
#11 0x0000000000466056 in epoll::waitAndProcessEvents ()
#12 0x000000000043a8b7 in EventDispatcher::run ()
#13 0x0000000000418091 in HttpServerImpl::start ()
#14 0x0000000000407ec9 in LshttpdMain::main ()
#15 0x0000000000404e21 in main ()


Hopefully these are useful.
 
Last edited:

PSS

Well-Known Member
#4
The system is RHEL 5 64-bit.

Here's the lib dir:

[root@main bak_core]# ls -la /lib64/
total 15056
drwxr-xr-x 8 root root 4096 Jun 20 19:28 .
drwxr-xr-x 29 root root 4096 Jun 26 12:52 ..
drwxr-xr-x 2 root root 4096 Jun 20 12:56 bdevid
drwxr-xr-x 2 root root 4096 Dec 15 2006 dbus-1.0
drwxr-xr-x 2 root root 4096 Jun 20 12:55 iptables
-rwxr-xr-x 1 root root 130448 Jan 15 13:45 ld-2.5.so
lrwxrwxrwx 1 root root 9 Jun 20 12:54 ld-linux-x86-64.so.2 -> ld-2.5.so
lrwxrwxrwx 1 root root 20 Jun 20 12:57 ld-lsb-x86-64.so.3 -> ld-linux-x86-64.so.2
lrwxrwxrwx 1 root root 15 Jun 20 12:54 libacl.so.1 -> libacl.so.1.1.0
-rwxr-xr-x 1 root root 28440 Jul 12 2006 libacl.so.1.1.0
-rwxr-xr-x 1 root root 20088 Jan 15 13:45 libanl-2.5.so
lrwxrwxrwx 1 root root 13 Jun 20 12:54 libanl.so.1 -> libanl-2.5.so
lrwxrwxrwx 1 root root 18 Jun 20 12:55 libasound.so.2 -> libasound.so.2.0.0
-rwxr-xr-x 1 root root 895584 Jan 16 17:56 libasound.so.2.0.0
lrwxrwxrwx 1 root root 16 Jun 20 12:54 libattr.so.1 -> libattr.so.1.1.0
-rwxr-xr-x 1 root root 18176 Jul 12 2006 libattr.so.1.1.0
lrwxrwxrwx 1 root root 17 Jun 20 12:54 libaudit.so.0 -> libaudit.so.0.0.0
-rwxr-xr-x 1 root root 78472 Dec 10 2006 libaudit.so.0.0.0
lrwxrwxrwx 1 root root 15 Jun 20 12:55 libblkid.so.1 -> libblkid.so.1.0
-rwxr-xr-x 1 root root 41376 Jan 11 16:34 libblkid.so.1.0
-rwxr-xr-x 1 root root 9000 Jan 15 13:45 libBrokenLocale-2.5.so
lrwxrwxrwx 1 root root 22 Jun 20 12:54 libBrokenLocale.so.1 -> libBrokenLocale-2.5.so
-rwxr-xr-x 1 root root 1678480 Jan 15 13:45 libc-2.5.so
lrwxrwxrwx 1 root root 14 Jun 20 12:54 libcap.so.1 -> libcap.so.1.10
-rwxr-xr-x 1 root root 17384 Nov 14 2006 libcap.so.1.10
-rwxr-xr-x 1 root root 197840 Jan 15 13:45 libcidn-2.5.so
lrwxrwxrwx 1 root root 14 Jun 20 12:54 libcidn.so.1 -> libcidn-2.5.so
lrwxrwxrwx 1 root root 17 Jun 20 12:55 libcom_err.so.2 -> libcom_err.so.2.1
-rwxr-xr-x 1 root root 9976 Jan 11 16:34 libcom_err.so.2.1
-rwxr-xr-x 1 root root 30920 Jan 15 13:45 libcrypt-2.5.so
-rwxr-xr-x 1 root root 1326168 Nov 30 2006 libcrypto.so.0.9.8b
lrwxrwxrwx 1 root root 19 Jun 20 12:55 libcrypto.so.6 -> libcrypto.so.0.9.8b
lrwxrwxrwx 1 root root 15 Jun 20 12:54 libcrypt.so.1 -> libcrypt-2.5.so
lrwxrwxrwx 1 root root 11 Jun 20 12:54 libc.so.6 -> libc-2.5.so
-rwxr-xr-x 1 root root 1006192 Sep 12 2006 libdb-4.3.so
lrwxrwxrwx 1 root root 18 Jun 20 12:55 libdbus-1.so.3 -> libdbus-1.so.3.2.0
-rwxr-xr-x 1 root root 227768 Dec 15 2006 libdbus-1.so.3.2.0
lrwxrwxrwx 1 root root 19 Jun 20 12:55 libdevmapper.a -> libdevmapper.a.1.02
-r-xr-xr-x 1 root root 335018 Nov 28 2006 libdevmapper.a.1.02
lrwxrwxrwx 1 root root 25 Jun 20 12:55 libdevmapper-event.a -> libdevmapper-event.a.1.02
-r-xr-xr-x 1 root root 33946 Nov 28 2006 libdevmapper-event.a.1.02
lrwxrwxrwx 1 root root 37 Jun 20 12:55 libdevmapper-event-lvm2mirror.so -> libdevmapper-event-lvm2mirror.so.2.02
-r-xr-xr-x 1 root root 8848 Dec 17 2006 libdevmapper-event-lvm2mirror.so.2.02
lrwxrwxrwx 1 root root 26 Jun 20 12:55 libdevmapper-event.so -> libdevmapper-event.so.1.02
-r-xr-xr-x 1 root root 13512 Nov 28 2006 libdevmapper-event.so.1.02
lrwxrwxrwx 1 root root 20 Jun 20 12:55 libdevmapper.so -> libdevmapper.so.1.02
-r-xr-xr-x 1 root root 69200 Nov 28 2006 libdevmapper.so.1.02
-rwxr-xr-x 1 root root 23520 Jan 15 13:45 libdl-2.5.so
lrwxrwxrwx 1 root root 12 Jun 20 12:54 libdl.so.2 -> libdl-2.5.so
lrwxrwxrwx 1 root root 13 Jun 20 12:55 libe2p.so.2 -> libe2p.so.2.3
-rwxr-xr-x 1 root root 26456 Jan 11 16:34 libe2p.so.2.3
lrwxrwxrwx 1 root root 17 Jun 20 12:54 libexpat.so.0 -> libexpat.so.0.5.0
-rwxr-xr-x 1 root root 143272 Jul 12 2006 libexpat.so.0.5.0
lrwxrwxrwx 1 root root 16 Jun 20 12:55 libext2fs.so.2 -> libext2fs.so.2.4
-rwxr-xr-x 1 root root 122328 Jan 11 16:34 libext2fs.so.2.4
-rwxr-xr-x 1 root root 57000 Feb 25 06:53 libgcc_s-4.1.1-20070105.so.1
lrwxrwxrwx 1 root root 28 Jun 20 13:06 libgcc_s.so.1 -> libgcc_s-4.1.1-20070105.so.1
lrwxrwxrwx 1 root root 23 Jun 20 12:54 libglib-2.0.so.0 -> libglib-2.0.so.0.1200.3
-rwxr-xr-x 1 root root 647864 Aug 30 2006 libglib-2.0.so.0.1200.3
lrwxrwxrwx 1 root root 26 Jun 20 12:54 libgmodule-2.0.so.0 -> libgmodule-2.0.so.0.1200.3
-rwxr-xr-x 1 root root 13920 Aug 30 2006 libgmodule-2.0.so.0.1200.3
lrwxrwxrwx 1 root root 26 Jun 20 12:54 libgobject-2.0.so.0 -> libgobject-2.0.so.0.1200.3
-rwxr-xr-x 1 root root 262936 Aug 30 2006 libgobject-2.0.so.0.1200.3
lrwxrwxrwx 1 root root 26 Jun 20 12:54 libgthread-2.0.so.0 -> libgthread-2.0.so.0.1200.3
-rwxr-xr-x 1 root root 19496 Aug 30 2006 libgthread-2.0.so.0.1200.3
-rwxr-xr-x 1 root root 31576 Jan 18 13:32 libiw.so.28
-rwxr-xr-x 1 root root 615136 Jan 15 13:45 libm-2.5.so
lrwxrwxrwx 1 root root 11 Jun 20 12:54 libm.so.6 -> libm-2.5.so
-rwxr-xr-x 1 root root 109824 Jan 15 13:45 libnsl-2.5.so
lrwxrwxrwx 1 root root 13 Jun 20 12:54 libnsl.so.1 -> libnsl-2.5.so
-rwxr-xr-x 1 root root 43064 Jan 15 13:45 libnss_compat-2.5.so
lrwxrwxrwx 1 root root 20 Jun 20 12:54 libnss_compat.so.2 -> libnss_compat-2.5.so
-rwxr-xr-x 1 root root 791840 Jul 12 2006 libnss_db-2.2.so
lrwxrwxrwx 1 root root 16 Jun 20 12:57 libnss_db.so.2 -> libnss_db-2.2.so
-rwxr-xr-x 1 root root 23728 Jan 15 13:45 libnss_dns-2.5.so
lrwxrwxrwx 1 root root 17 Jun 20 12:54 libnss_dns.so.2 -> libnss_dns-2.5.so
-rwxr-xr-x 1 root root 53880 Jan 15 13:45 libnss_files-2.5.so
lrwxrwxrwx 1 root root 19 Jun 20 12:54 libnss_files.so.2 -> libnss_files-2.5.so
-rwxr-xr-x 1 root root 24832 Jan 15 13:45 libnss_hesiod-2.5.so
lrwxrwxrwx 1 root root 20 Jun 20 12:54 libnss_hesiod.so.2 -> libnss_hesiod-2.5.so
-rwxr-xr-x 1 root root 3065928 Nov 20 2006 libnss_ldap-2.5.so
lrwxrwxrwx 1 root root 18 Jun 20 12:56 libnss_ldap.so.2 -> libnss_ldap-2.5.so
-rwxr-xr-x 1 root root 53432 Jan 15 13:45 libnss_nis-2.5.so
-rwxr-xr-x 1 root root 63040 Jan 15 13:45 libnss_nisplus-2.5.so
lrwxrwxrwx 1 root root 21 Jun 20 12:54 libnss_nisplus.so.2 -> libnss_nisplus-2.5.so
lrwxrwxrwx 1 root root 17 Jun 20 12:54 libnss_nis.so.2 -> libnss_nis-2.5.so
-rwxr-xr-x 1 root root 19960 May 11 12:10 libnss_winbind.so.2
-rwxr-xr-x 1 root root 921000 May 11 12:10 libnss_wins.so.2
lrwxrwxrwx 1 root root 17 Jun 20 12:55 libpamc.so.0 -> libpamc.so.0.81.0
-rwxr-xr-x 1 root root 11312 Jan 15 13:10 libpamc.so.0.81.0
lrwxrwxrwx 1 root root 21 Jun 20 12:55 libpam_misc.so.0 -> libpam_misc.so.0.81.2
-rwxr-xr-x 1 root root 13464 Jan 15 13:10 libpam_misc.so.0.81.2
lrwxrwxrwx 1 root root 16 Jun 20 12:55 libpam.so.0 -> libpam.so.0.81.5
-rwxr-xr-x 1 root root 46872 Jan 15 13:10 libpam.so.0.81.5
lrwxrwxrwx 1 root root 16 Jun 20 12:54 libpcre.so.0 -> libpcre.so.0.0.1
-rwxr-xr-x 1 root root 117656 Jul 12 2006 libpcre.so.0.0.1
-rwxr-xr-x 1 root root 61248 Nov 28 2006 libproc-3.2.7.so
-rwxr-xr-x 1 root root 141208 Jan 15 13:45 libpthread-2.5.so
lrwxrwxrwx 1 root root 17 Jun 20 12:54 libpthread.so.0 -> libpthread-2.5.so
-rwxr-xr-x 1 root root 92728 Jan 15 13:45 libresolv-2.5.so
lrwxrwxrwx 1 root root 16 Jun 20 12:54 libresolv.so.2 -> libresolv-2.5.so
-rwxr-xr-x 1 root root 53480 Jan 15 13:45 librt-2.5.so
lrwxrwxrwx 1 root root 12 Jun 20 12:54 librt.so.1 -> librt-2.5.so
-rwxr-xr-x 1 root root 22424 Jan 15 13:45 libSegFault.so
-rwxr-xr-x 1 root root 95480 Jan 12 09:57 libselinux.so.1
-rwxr-xr-x 1 root root 159112 Dec 22 2006 libsemanage.so.1
-rwxr-xr-x 1 root root 247528 Nov 14 2006 libsepol.so.1
-rwxr-xr-x 1 root root 302552 Nov 30 2006 libssl.so.0.9.8b
lrwxrwxrwx 1 root root 16 Jun 20 12:55 libssl.so.6 -> libssl.so.0.9.8b
lrwxrwxrwx 1 root root 12 Jun 20 12:55 libss.so.2 -> libss.so.2.0
-rwxr-xr-x 1 root root 26696 Jan 11 16:34 libss.so.2.0
lrwxrwxrwx 1 root root 19 Jun 20 12:54 libtermcap.so.2 -> libtermcap.so.2.0.8
-rwxr-xr-x 1 root root 15840 Jul 13 2006 libtermcap.so.2.0.8
-rwxr-xr-x 1 root root 39064 Jan 15 13:45 libthread_db-1.0.so
lrwxrwxrwx 1 root root 19 Jun 20 12:54 libthread_db.so.1 -> libthread_db-1.0.so
-rwxr-xr-x 1 root root 18312 Jan 15 13:45 libutil-2.5.so
lrwxrwxrwx 1 root root 14 Jun 20 12:54 libutil.so.1 -> libutil-2.5.so
lrwxrwxrwx 1 root root 14 Jun 20 12:55 libuuid.so.1 -> libuuid.so.1.2
-rwxr-xr-x 1 root root 13096 Jan 11 16:34 libuuid.so.1.2
lrwxrwxrwx 1 root root 22 Jun 20 12:55 libvolume_id.so.0 -> libvolume_id.so.0.66.0
-rwxr-xr-x 1 root root 28328 Dec 18 2006 libvolume_id.so.0.66.0
drwxr-xr-x 2 root root 4096 Jun 20 12:54 rtkaio
drwxr-xr-x 4 root root 4096 Jun 20 19:28 security
drwxr-xr-x 2 root root 4096 Oct 10 2006 tls
 

mistwang

LiteSpeed Staff
#5
For core dump, please switch to lshttpd.dbg binary in the installation package. it will give more useful debug information. Just copy it over to lsws/bin directory and do "ln -sf lshttpd.dbg lshttpd", then restart.

For the lsphp process, you need to strace 12040 and 11625.
 

PSS

Well-Known Member
#6
I could not get it crash this time, it gave 503 after 15 minutes.

tree:
Code:
  18823 	root 	16:41 	./lshttpd
      18826 	root 	16:41 	lscgid
      18896 	nobody 	16:42 	./lshttpd
         18897 	nobody 	16:42 	lsphp -c ../php
      18899 	nobody 	16:42 	./lshttpd
      18900 	nobody 	16:42 	./lshttpd
         19052 	nobody 	16:43 	lsphp -c ../php
            19053 	nobody 	16:43 	lsphp -c ../php
      18901 	nobody 	16:42 	./lshttpd


I straced the child php process, and it restarted after 5 minutes and and when the 3rd one detached it gave the 503 and stopped there.

[root@main bak_core]# /usr/bin/strace -p 19053
Process 19053 attached - interrupt to quit
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGUSR1 (User defined signal 1) @ 0 (0) ---
rt_sigreturn(0xa) = -1 EINTR (Interrupted system call)
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGTERM (Terminated) @ 0 (0) ---
Process 19053 detached
[root@main bak_core]# /usr/bin/strace -p 19590
Process 19590 attached - interrupt to quit
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGUSR1 (User defined signal 1) @ 0 (0) ---
rt_sigreturn(0xa) = -1 EINTR (Interrupted system call)
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGTERM (Terminated) @ 0 (0) ---
Process 19590 detached
[root@main bak_core]# /usr/bin/strace -p 20106
Process 20106 attached - interrupt to quit
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGUSR1 (User defined signal 1) @ 0 (0) ---
rt_sigreturn(0xa) = -1 EINTR (Interrupted system call)
read(4, 0x1c17660, 16384) = ? ERESTARTSYS (To be restarted)
--- SIGTERM (Terminated) @ 0 (0) ---
Process 20106 detached

.. and got immediately 503 error.

I'll try it now a few times if I can get it to crash.
 
Top