diff --git a/pandora_server/ChangeLog b/pandora_server/ChangeLog index 6524448dac..fbbbcc911e 100644 --- a/pandora_server/ChangeLog +++ b/pandora_server/ChangeLog @@ -1,3 +1,8 @@ +2009-05-27 Ramon Novoa + + * lib/PandoraFMS/ReconServer.pm: Interrupt recon tasks being executed + if the task was deleted. + 2009-05-27 Ramon Novoa * lib/PandoraFMS/Core.pm: Disabled string comparisons for diff --git a/pandora_server/lib/PandoraFMS/ReconServer.pm b/pandora_server/lib/PandoraFMS/ReconServer.pm index 2e9af2ede9..2f72c832aa 100644 --- a/pandora_server/lib/PandoraFMS/ReconServer.pm +++ b/pandora_server/lib/PandoraFMS/ReconServer.pm @@ -121,7 +121,9 @@ sub data_consumer ($$) { for (my $i = 1, $net_addr++; $net_addr < $net_addr->broadcast; $i++, $net_addr++) { my $addr = (split(/\//, $net_addr))[0]; - update_recon_task ($dbh, $task_id, ceil ($i / ($total_hosts / 100))); + + # Update the recon task or break if it does not exist anymore + last if (update_recon_task ($dbh, $task_id, ceil ($i / ($total_hosts / 100))) eq '0E0'); # Does the host already exist? next if (get_agent_from_addr ($dbh, $addr) > 0);