do not select pseudo devices for poller jobs

This commit is contained in:
Oliver Gorwits
2017-06-06 08:08:52 +01:00
parent 275e01ff59
commit 2eb0b30812
4 changed files with 8 additions and 4 deletions

View File

@@ -20,6 +20,7 @@
* add SSL development library to Release Notes * add SSL development library to Release Notes
* #309 missing Device Port VLAN Mismatch CSV template * #309 missing Device Port VLAN Mismatch CSV template
* fail safe on an empty *_no ACL * fail safe on an empty *_no ACL
* do not select pseudo devices for poller jobs
2.035006 - 2017-04-29 2.035006 - 2017-04-29

View File

@@ -21,8 +21,9 @@ sub _walk_body {
my $job_layer = $self->$layer_method; my $job_layer = $self->$layer_method;
my %queued = map {$_ => 1} jq_queued($job_type); my %queued = map {$_ => 1} jq_queued($job_type);
my @devices = schema('netdisco')->resultset('Device') my @devices = schema('netdisco')->resultset('Device')->search({
->has_layer($job_layer)->get_column('ip')->all; -or => [ 'vendor' => undef, 'vendor' => { '!=' => 'netdisco' }],
})->has_layer($job_layer)->get_column('ip')->all;
my @filtered_devices = grep {!exists $queued{$_}} @devices; my @filtered_devices = grep {!exists $queued{$_}} @devices;
jq_insert([ jq_insert([

View File

@@ -19,8 +19,9 @@ sub discoverall {
my ($self, $job) = @_; my ($self, $job) = @_;
my %queued = map {$_ => 1} jq_queued('discover'); my %queued = map {$_ => 1} jq_queued('discover');
my @devices = schema('netdisco')->resultset('Device') my @devices = schema('netdisco')->resultset('Device')->search({
->get_column('ip')->all; -or => [ 'vendor' => undef, 'vendor' => { '!=' => 'netdisco' }],
})->get_column('ip')->all;
my @filtered_devices = grep {!exists $queued{$_}} @devices; my @filtered_devices = grep {!exists $queued{$_}} @devices;
jq_insert([ jq_insert([

View File

@@ -15,6 +15,7 @@ sub expire {
if (setting('expire_devices') and setting('expire_devices') > 0) { if (setting('expire_devices') and setting('expire_devices') > 0) {
schema('netdisco')->txn_do(sub { schema('netdisco')->txn_do(sub {
schema('netdisco')->resultset('Device')->search({ schema('netdisco')->resultset('Device')->search({
-or => [ 'vendor' => undef, 'vendor' => { '!=' => 'netdisco' }],
last_discover => \[q/< (now() - ?::interval)/, last_discover => \[q/< (now() - ?::interval)/,
(setting('expire_devices') * 86400)], (setting('expire_devices') * 86400)],
})->delete(); })->delete();