View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000402 | unreal | ircd | public | 2002-10-12 00:42 | 2003-05-03 19:37 |
Reporter | mcskaf | Assigned To | |||
Priority | normal | Severity | major | Reproducibility | always |
Status | closed | Resolution | open | ||
OS | windows | OS Version | xp pro | ||
Product Version | 3.2-beta12 | ||||
Summary | 0000402: /restart pw makes ircd die but not restart | ||||
Description | I installed the ircd using the windows installer (very nice btw). It installed as a service. When I use the /restart pw command the server stops but does not restart. I looked at the services manager - it says the ircd is installed as a service - automatic startup enabled but it is currently stopped. The system event log says it stopped unexpectedly. There is no services.log file. There is nothing relevent in the ircd.log file. | ||||
Additional Information | I am able to work around this problem by manually setting the service to restart on first, second, and subsequent failures via the services properties in mmc. Perhaps the easy fix is to set these fields programmatically when the service is installed but I don't know about the consequences when the services fails with gpf or other errors. | ||||
Tags | No tags attached. | ||||
3rd party modules | |||||
|
I have the same problem under linux, mdk8.2 & mdk9 using unreal3.2 b12 after some restarts, I found that it hangs only if the second process has start. I don't know what is exactly this second process (the proxy scanner ?) but before it starts, I can restart from my irc client or in console without any problem and after this one started, the ircd freezes if I restart it should then stop it (./unreal stop) to kill the pid and start again ******************************************************************************* 2nd edition: the ircd hangs effectively only if this second process (which appear when a client from another machine connects to the server) has been launched then the second process blocks or I don't know what, but the ircd has to be killed to be able to start it again Before the 2nd client: [bach@Shark Unreal3.2]$ ps -x | grep ircd 21472 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21477 pts/1 S 0:00 grep ircd With the 2nd client: [bach@Shark Unreal3.2]$ ps -x | grep ircd 21472 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21483 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21495 pts/1 S 0:00 grep ircd After the restart: [bach@Shark Unreal3.2]$ ps -x | grep ircd 21472 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21483 ? R 0:06 /home/bach/Unreal3.2/src/ircd 21506 pts/1 S 0:00 grep ircd [bach@Shark Unreal3.2]$ ps -x | grep ircd 21472 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21483 ? R 0:15 /home/bach/Unreal3.2/src/ircd 21511 pts/1 S 0:00 grep ircd Tried to kill the second process: [bach@Shark Unreal3.2]$ kill -9 21483 [bach@Shark Unreal3.2]$ ps -x | grep ircd 21472 ? S 0:00 /home/bach/Unreal3.2/src/ircd 21483 ? Z 0:43 [ircd <defunct>] 21528 pts/1 S 0:00 grep ircd even tried to kill -2 or kill -1 the ircd, but nothing more... had to kill -9 21472 to be able to start the ircd and I don't know how it works through the /restart command from an oper don't know if it really help... but the bug is here edited on: 10-13 16:55 edited on: 10-13 16:56 |
|
mister's problem may be something different than what I originally reported. I found the problem with restarting the service under windows and I'm working on a solution. |
|
Yes the problems are definately different. In non-service mode, /restart works fine in win32. In service mode it doesn't, I've yet to come up with a good way of fixing this, if you can come up with a solution I'd be glad to hear it... |
|
Note (for myself): This hang-at-/restart bug is still present at Linux. Tested with libc2.2.5/pthreads0.9/Unreal from CVS (.1751) |
|
Yes, thought I was the only one, where it don´t work. When I do /restart password, its disconnecting me and when I try to reconnect, it says connection refused, but the two processes (or one process and one thread) are still there. And the CPU load gets higher and higher after doing a restart, up to 50% and more... |
|
It hangs here: (gdb) bt #0 0x4009a61a in sigsuspend () from /lib/libc.so.6 #1 0x40065699 in __pthread_wait_for_restart_signal () from /lib/libpthread.so.0 #2 0x40065251 in pthread_onexit_process () from /lib/libpthread.so.0 #3 0x40065593 in pthread_kill_other_threads_np () from /lib/libpthread.so.0 #4 0x08061a4b in server_reboot (mesg=0x400 <Address 0x400 out of bounds>) at ircd.c:341 #5 0x08082c9c in m_restart (cptr=0x8150178, sptr=0x8150178, parc=0, parv=0x81136a0) at s_serv.c:3777 [..] |
|
Closing this /restart *NIX thread, the windows bug may still be present and is left open as bugid 0000815. |