From: Dirk Koopman Date: Wed, 15 Feb 2017 22:50:34 +0000 (+0000) Subject: Merge branch 'mojo' of ssh://server/scm/spider into mojo X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=commitdiff_plain;h=c80c2aab681f6f691f7b9a5fa76cde2e938562c0;hp=-c;p=spider.git Merge branch 'mojo' of ssh://server/scm/spider into mojo Conflicts: Changes perl/cluster.pl --- c80c2aab681f6f691f7b9a5fa76cde2e938562c0 diff --combined Changes index 60e1d87c,13fa2e16..ac17a93f --- a/Changes +++ b/Changes @@@ -1,6 -1,5 +1,8 @@@ +15Feb17======================================================================= +1. Update UPGRADE.mojo a bit - 2. Fix(?) problems picking up SysVar.pm variables. ++2. Add local::lib so that it can be used for non-root installations. + 09Jan17======================================================================= + 1. Fix mojo branch clean install issues (failing to find $main::data et al) 02Jan17======================================================================= 1. Add CTY-2615 prefixes 2. Add rbn.pl - an experimental rbn deduplicating spot filter. diff --combined perl/cluster.pl index ca73a824,4aa81c62..054a22ca --- a/perl/cluster.pl +++ b/perl/cluster.pl @@@ -15,16 -15,12 +15,18 @@@ package main require 5.10.1; use warnings; + use vars qw($root $is_win $systime); + # make sure that modules are searched in the order local then perl BEGIN { umask 002; + # take into account any local::lib that might be present + eval { + require local::lib; + }; + import local::lib unless ($@); + # root of directory tree for this system $root = "/spider"; $root = $ENV{'DXSPIDER_ROOT'} if $ENV{'DXSPIDER_ROOT'}; @@@ -38,12 -34,15 +40,15 @@@ die "$root/local/DXVars.pm doesn't exist, please RTFM" unless -e "$root/local/DXVars.pm"; # create some directories - mkdir "$root/local_cmd", 02777 unless -d "$root/local_cmd"; - mkdir "$root/local_data", 02777 unless -d "$root/local_data"; + mkdir "$root/local_cmd", 02774 unless -d "$root/local_cmd"; + + # locally stored data lives here + my $local_data = "$root/local_data"; + mkdir $local_data, 02774 unless -d $local_data; # try to create and lock a lockfile (this isn't atomic but # should do for now - $lockfn = "$root/local_data/cluster.lck"; # lock file name + my $lockfn = "$root/local_data/cluster.lck"; # lock file name if (-w $lockfn) { open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!"; my $pid = ; @@@ -63,11 -62,14 +68,14 @@@ $is_win = ($^O =~ /^MS/ || $^O =~ /^OS-2/) ? 1 : 0; # is it Windows? $systime = time; + } use DXVars; use SysVar; + use strict; - ++ use Mojo::IOLoop; use Msg; @@@ -132,12 -134,9 +140,9 @@@ use Web use Local; - package main; - - use strict; - use vars qw(@inqueue $systime $starttime $lockfn @outstanding_connects - $zombies $root @listeners $lang $myalias @debug $userfn $clusteraddr - $clusterport $mycall $decease $is_win $routeroot $me $reqreg $bumpexisting + use vars qw(@inqueue $starttime $lockfn @outstanding_connects + $zombies @listeners $lang $myalias @debug $userfn $clusteraddr + $clusterport $mycall $decease $routeroot $me $reqreg $bumpexisting $allowdxby $dbh $dsn $dbuser $dbpass $do_xml $systime_days $systime_daystart $can_encode $maxconnect_user $maxconnect_node $idle_interval $log_flush_interval $broadcast_debug