[ULTRAMONKEY-USERS] Ldirectord trouble about monitoring service port

Hideaki Kondo kondo.hideaki at oss.ntt.co.jp
Tue Jul 3 21:25:39 EST 2007


Hello, Simon-san, UltraMonkey-Users,

Thank you for your continued support.

# I'm sorry for my poor English in advance.

I've found a trouble of ldirectord about monitoring
service port of realserver.
Ldirectord seems to exit when ldirectord detects
the service port (80(http), 21(ftp), etc) is down.

The cause of this trouble is the lack of SIGALRM
cancellation (alarm 0;) as follows.

[ldirectord in UltraMonkey3
(heartbeat-1.2.3.cvs.20050927-1.rh.el.um.3.src.rpm)]
http://www.ultramonkey.org/download/3/rh.el.3/SRPMS/

-------------------------------------------------------------------
--- ldirectord.org	2007-06-26 02:27:10.000000000 +0900
+++ ldirectord	2007-07-01 20:18:14.000000000 +0900
@@ -1997,6 +1997,7 @@
 		if ($sock) {
 			close($sock);
 		} else {
+			alarm 0; # Cancel the alarm
 			die(); #socket attempt failed immediately (not timeout)
 		}
 		&ld_debug(3, "Connected to $1 (port $port)");
@@ -2033,6 +2034,7 @@
 		my $sock = &ld_open_socket($$r{server}, $sip_d_port, 
 					$$v{protocol});
 		unless ($sock) {
+			alarm 0; # Cancel the alarm
 			die(); #socket attempt failed immediately (not timeout)
 		}
-------------------------------------------------------------------

[Referense]
I think that the following trouble is similar to this one.
http://osdir.com/ml/linux.lvs.user/2005-09/msg00100.html
http://archive.linuxvirtualserver.org/html/lvs-users/2005-12/msg00035.html

In this connection, it seems that this bug fix is reflected
in heartbeat-1.2.5.

Would you please update heartbeat-1.2.3.cvs.20050927-1.rh.el.um.3.xxx
for this bug fix ?
# I think that early update is better because this function (
# check_connect()) is often used.


Best regards

--
Hideaki Kondo




More information about the Ultramonkey-users mailing list