NAME
Helios::Error::FatalNoRetry - fatal exception class for Helios job processing system; implies a job failed and the error was so serious the job should not be reattempted.
SYNOPSIS
# in dodgy code:
use Error qw(:try);
sub dodgy {
if ($something_bad) {
throw Helios::Error::Fatal("Ah! Thats not gone well at all!");
}
}
# in the caller of the dodgy code:
use Error qw(:try);
try {
dodgy(@params);
} catch Helios::Error::FatalNoRetry with {
my $e = shift;
$self->logMsg( $e->text() );
$self->failedJob( $job, $e->text() );
};
DESCRIPTION
Helios::Error::FatalNoRetry can be used to identify errors that cause a job not only to fail but to not be re-attempted by the job processing system. This implies an error that should be logged and the Schwartz job in question should be marked as permanently failed (with the Helios::Worker->failedJobPermanent() method).
Compare this to Helios::Error::Fatal, which implies a similar circumstance except the error isn't severe enough to prevent the system from re-attempting later.
SEE ALSO
Helios::Error::Fatal, Helios::Error::Warning, Error, Error::Simple
AUTHOR
Andrew Johnson, <ajohnson@ittoolbox.com>
COPYRIGHT AND LICENSE
Copyright (C) 2007-8 by CEB Toolbox, Inc.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.0 or, at your option, any later version of Perl 5 you may have available.
WARRANTY
This software comes with no warranty of any kind.