projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix agwrestart
[spider.git]
/
perl
/
cluster.pl
diff --git
a/perl/cluster.pl
b/perl/cluster.pl
index b4cfc4823fd01f9d62691cdceb55ec11d6663a20..185ec787af1c43b87599e7870fd54cccf816e912 100755
(executable)
--- a/
perl/cluster.pl
+++ b/
perl/cluster.pl
@@
-36,6
+36,9
@@
BEGIN {
open(CLLOCK, ">$lockfn") or die "Can't open Lockfile ($lockfn) $!";
print CLLOCK "$$\n";
close CLLOCK;
open(CLLOCK, ">$lockfn") or die "Can't open Lockfile ($lockfn) $!";
print CLLOCK "$$\n";
close CLLOCK;
+
+ $is_win = ($^O =~ /^MS/ || $^O =~ /^OS-2/) ? 1 : 0; # is it Windows?
+
}
use Msg;
}
use Msg;
@@
-79,7
+82,7
@@
package main;
use strict;
use vars qw(@inqueue $systime $version $starttime $lockfn @outstanding_connects
$zombies $root @listeners $lang $myalias @debug $userfn $clusteraddr
use strict;
use vars qw(@inqueue $systime $version $starttime $lockfn @outstanding_connects
$zombies $root @listeners $lang $myalias @debug $userfn $clusteraddr
- $clusterport $mycall $decease $build
+ $clusterport $mycall $decease $build
$is_win
);
@inqueue = (); # the main input queue, an array of hashes
);
@inqueue = (); # the main input queue, an array of hashes
@@
-301,6
+304,12
@@
sub uptime
my $mins = int $t / 60;
return sprintf "%d %02d:%02d", $days, $hours, $mins;
}
my $mins = int $t / 60;
return sprintf "%d %02d:%02d", $days, $hours, $mins;
}
+
+sub AGWrestart
+{
+ AGWMsg::init(\&new_channel);
+}
+
#############################################################
#
# The start of the main line of code
#############################################################
#
# The start of the main line of code
@@
-368,13
+377,13
@@
for (@main::listen) {
push @listeners, $conn;
dbg('err', "External Port: $_->[0] $_->[1]");
}
push @listeners, $conn;
dbg('err', "External Port: $_->[0] $_->[1]");
}
-AGW
Msg::init(\&new_channel
);
+AGW
restart(
);
# load bad words
dbg('err', "load badwords: " . (BadWords::load or "Ok"));
# prime some signals
# load bad words
dbg('err', "load badwords: " . (BadWords::load or "Ok"));
# prime some signals
-unless ($
^O =~ /^MS/
) {
+unless ($
is_win
) {
unless ($DB::VERSION) {
$SIG{INT} = \&cease;
$SIG{TERM} = \&cease;
unless ($DB::VERSION) {
$SIG{INT} = \&cease;
$SIG{TERM} = \&cease;
@@
-467,7
+476,8
@@
for (;;) {
DXDb::process();
DXUser::process();
DXDupe::process();
DXDb::process();
DXUser::process();
DXDupe::process();
-
+ AGWMsg::process();
+
eval {
Local::process(); # do any localised processing
};
eval {
Local::process(); # do any localised processing
};