From b57b03a060d881e7f82e159c2855004949920f52 Mon Sep 17 00:00:00 2001 From: Oliver Gorwits Date: Wed, 3 Aug 2022 13:22:31 +0100 Subject: [PATCH] make loop detection not as fatal --- lib/App/Netdisco/Worker/Plugin/Snapshot.pm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/App/Netdisco/Worker/Plugin/Snapshot.pm b/lib/App/Netdisco/Worker/Plugin/Snapshot.pm index e6e0cde3..2a9eddb2 100644 --- a/lib/App/Netdisco/Worker/Plugin/Snapshot.pm +++ b/lib/App/Netdisco/Worker/Plugin/Snapshot.pm @@ -275,8 +275,8 @@ sub walker { $vars = []; $bulkwalk = 0; $snmp->{BulkWalk} = 0; - delete $sess->{ErrorNum}; - delete $sess->{ErrorStr}; + undef $sess->{ErrorNum}; + undef $sess->{ErrorStr}; } } @@ -328,7 +328,10 @@ sub walker { if ($loopdetect) { # Check to see if we've already seen this IID (looping) if ( defined $seen{$oid} and $seen{$oid} ) { - return Status->error("Looping on: oid: $oid"); + debug "snapshot $device : looping on $oid"; + shift @$vars; + $var = shift @$vars or last; + next; } else { $seen{$oid}++; @@ -344,7 +347,7 @@ sub walker { next; } - # debug "snapshot $device - retreived $oid : $val"; + # debug "snapshot $device - retreived $oid : $val"; $localstore{$oid} = $val; }