daemon clean

This commit is contained in:
Oliver Gorwits
2014-08-10 13:13:07 +01:00
parent c817a35537
commit 9ceb43c0f7
5 changed files with 21 additions and 90 deletions

View File

@@ -48,8 +48,16 @@ setting('plugins')->{DBIC}->{daemon} = {
# defaults for workers
setting('workers')->{queue} ||= 'PostgreSQL';
setting('workers')->{interactives} = 1
if setting('workers') and not exists setting('workers')->{interactives};
if (exists setting('workers')->{interactives}
or exists setting('workers')->{pollers}) {
setting('workers')->{pollers} = (
(setting('workers')->{pollers} || 0)
.' + '. (setting('workers')->{interactives} || 0)
) if setting('workers')->{interactives};
delete setting('workers')->{interactives};
}
# force skipped DNS resolution, if unset
setting('dns')->{hosts_file} ||= '/etc/hosts';

View File

@@ -20,7 +20,7 @@ sub worker_body {
while (1) {
prctl sprintf 'netdisco-daemon: worker #%s %s: idle', $wid, lc($type);
my $jobs = [ $self->{Q}->dequeue(1) ]; # FIXME multiple take, take type, thaw
my $jobs = [ $self->{queue}->dequeue(1) ]; # FIXME multiple take, take type, thaw
foreach my $job (@$jobs) {
next unless defined $job;

View File

@@ -27,7 +27,7 @@ sub worker_begin {
if (scalar @jobs) {
info sprintf "mgr (%s): found %s jobs booked to this processing node",
$wid, scalar @jobs;
$self->{Q}->enqueue(@jobs); # FIXME priority and freeze
$self->{queue}->enqueue(@jobs); # FIXME priority and freeze
}
}
@@ -39,7 +39,7 @@ sub worker_body {
if setting('workers')->{'no_manager'};
# FIXME really the best strategy?
my $num_slots = (MCE::Util::get_ncpu() * 2) - $self->{Q}->pending();
my $num_slots = (MCE::Util::get_ncpu() * 2) - $self->{queue}->pending();
while (1) {
debug "mgr ($wid): getting potential jobs for $num_slots workers";
@@ -55,7 +55,7 @@ sub worker_body {
$wid, $job->id;
# copy job to local queue
$self->{Q}->enqueue($job); # FIXME priority and freeze
$self->{queue}->enqueue($job); # FIXME priority and freeze
}
debug "mgr ($wid): sleeping now...";