package Helios::Error::Fatal; use base qw(Helios::Error::BaseError); our $VERSION = '2.40'; 1; __END__; =head1 NAME Helios::Error::Fatal - fatal exception class for Helios indicating a job failed but can be re-attempted =head1 SYNOPSIS # in dodgy code: use Error qw(:try); sub dodgy { if ($something_bad) { throw Helios::Error::Fatal("This job failed"); } } # in the caller of the dodgy code: use Error qw(:try); try { dodgy(@params); } catch Helios::Error::Fatal with { my $e = shift; $self->logMsg( $e->text() ); $self->failedJob( $job, $e->text() ); }; =head1 DESCRIPTION Helios::Error::Fatal can be used to identify errors that were severe enough to cause a job to fail. This implies an error that should be logged and the Schwartz job in question should be marked as failed (with the $job->failed() method). If your Worker class supports retrying failed jobs (overriding the max_retries() method), the system will retry the job up to the number times returned by max_retries(). Compare this to Helios::Error::FatalNoRetry, which implies a similar circumstance except the error is severe enough to prevent the system from re-attempting the job later. =head1 SEE ALSO L, L, L, L, L =head1 AUTHOR Andrew Johnson, Eajohnson@ittoolbox.comE =head1 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. =head1 WARRANTY This software comes with no warranty of any kind. =cut