diff --git a/ACU/Process.pm b/ACU/Process.pm index 0bd1e4d..e1700e6 100644 --- a/ACU/Process.pm +++ b/ACU/Process.pm @@ -22,6 +22,18 @@ our $nb_cpus = 0; $nb_cpus = grep {/^processor\s/} <$cpuinfo>; close $cpuinfo; +my @servers = ("gearmand-srv:4730"); + +sub add_server(@) +{ + push @servers, @_; +} + +sub set_servers(@) +{ + @servers = @_; +} + sub check_load ($) { my $priority = shift; @@ -94,7 +106,7 @@ sub register_no_parse ($$;$) my $worker = Gearman::Worker->new; - $worker->job_servers('gearmand:4730'); + $worker->job_servers( @servers ); $worker->register_function($funcname => sub { my $ret; @@ -127,7 +139,7 @@ sub register ($$;$$) my $worker = Gearman::Worker->new; - $worker->job_servers('gearmand:4730'); + $worker->job_servers( @servers ); $worker->register_function($funcname => sub { return do_work($subref, $given_arg, $priority, @_); }); # Disable exit on warning or error @@ -196,7 +208,7 @@ sub launch ($$;$$) my $funcname = shift; my $client = Gearman::Client->new; - $client->job_servers('gearmand:4730'); + $client->job_servers( @servers ); log DEBUG, "Launching $funcname..."; @@ -219,7 +231,7 @@ sub paralaunch ($$;$) my $xml = build_task_xml(shift, shift); my $client = Gearman::Client->new; - $client->job_servers('gearmand:4730'); + $client->job_servers( @servers ); my $taskset = $client->new_task_set; for my $task (@{ $funcsname }) diff --git a/process/exec/guantanamo.pl b/process/exec/guantanamo.pl index c503073..706def8 100644 --- a/process/exec/guantanamo.pl +++ b/process/exec/guantanamo.pl @@ -196,4 +196,5 @@ sub process_master log INFO, "Starting guantanamo.pl as master process"; +Process::add_server("gearman:4730"); Process::register("guantanamo", \&process_master); diff --git a/process/files/intradata_get.pl b/process/files/intradata_get.pl index 294fbcd..649674d 100644 --- a/process/files/intradata_get.pl +++ b/process/files/intradata_get.pl @@ -150,7 +150,7 @@ sub grades_generate log DEBUG, "Computed grades: ".$grading->compute($login); - open my $xmlgrade, ">", "$basedir/$year/$project_id/grades/$login.xml" or croak "grades/$login.xml"; + open my $xmlgrade, ">", "$basedir/$year/$project_id/grades/$login.xml" or croak "grades/$login.xml: $!"; binmode $xmlgrade; print $xmlgrade $grading->computeXML($login); close $xmlgrade; diff --git a/process/projects/gen_grading.pl b/process/projects/gen_grading.pl index 0597c10..9b91ff5 100644 --- a/process/projects/gen_grading.pl +++ b/process/projects/gen_grading.pl @@ -97,4 +97,5 @@ sub process return $grade->toString; } +Process::add_server("gearman:4730"); Process::register_no_parse("gen_grading", \&process); diff --git a/process/projects/get_csv.pl b/process/projects/get_csv.pl index fa21f79..746f230 100644 --- a/process/projects/get_csv.pl +++ b/process/projects/get_csv.pl @@ -105,4 +105,5 @@ sub process return $out; } +Process::add_server("gearman:4730"); Process::register_no_parse("get_csv", \&process);