cancel early if we can

This commit is contained in:
Oliver Gorwits
2018-02-11 12:07:12 +00:00
parent d3c83c395d
commit b213d0b9af

View File

@@ -19,6 +19,10 @@ register_worker({ phase => 'check' }, sub {
return Status->defer("discover skipped: $device is pseudo-device") return Status->defer("discover skipped: $device is pseudo-device")
if $device->is_pseudo; if $device->is_pseudo;
# runner has already called get_device to promote $job->device
return $job->cancel("fresh discover cancelled: $device already known")
if $device->in_storage and $job->subaction eq 'with-nodes';
return Status->defer("discover deferred: $device is not discoverable") return Status->defer("discover deferred: $device is not discoverable")
unless is_discoverable_now($device); unless is_discoverable_now($device);