IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Feb 24, 2009, 12:00:25 PM (17 years ago)
Author:
Paul Price
Message:

Adding handling for missed exceptions, similar to register_imfile.pl --- the idea is to have exceptions trigger the my_die functions so that errors are recorded in the database, and don't go on forever.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippScripts/scripts/detrend_process_exp.pl

    r20120 r22430  
    2424use Getopt::Long qw( GetOptions :config auto_help auto_version gnu_getopt );
    2525use Pod::Usage qw( pod2usage );
     26
     27# Look for programs we need
     28my $missing_tools;
     29my $dettool = can_run('dettool') or (warn "Can't find dettool" and $missing_tools = 1);
     30my $ppImage = can_run('ppImage') or (warn "Can't find ppImage" and $missing_tools = 1);
     31my $ppStatsFromMetadata = can_run('ppStatsFromMetadata') or (warn "Can't find ppStatsFromMetadata" and $missing_tools = 1);
     32if ($missing_tools) {
     33    warn("Can't find required tools.");
     34    exit($PS_EXIT_CONFIG_ERROR);
     35}
    2636
    2737my ( $det_id, $exp_id, $det_type, $exp_tag, $camera, $outroot, $dbname, $reduction, $verbose, $no_update,
     
    5363    defined $outroot;
    5464
     65# Unhandled exceptions should be passed on to my_die so they get pushed into the database
     66$SIG{__DIE__} = sub { die @_ if $^S;
     67                      my_die( $_[0], $det_id, $exp_id, $PS_EXIT_UNKNOWN_ERROR ); };
     68
    5569$ipprc->define_camera($camera);
    5670
     
    6680my $recipe = $ipprc->reduction($reduction, uc($det_type) . '_JPEG_IMAGE'); # Recipe to use
    6781&my_die("Unrecognised detrend type: $det_type", $det_id, $exp_id, $PS_EXIT_PROG_ERROR) unless defined $recipe;
    68 
    69 # Look for programs we need
    70 my $missing_tools;
    71 my $dettool = can_run('dettool') or (warn "Can't find dettool" and $missing_tools = 1);
    72 my $ppImage = can_run('ppImage') or (warn "Can't find ppImage" and $missing_tools = 1);
    73 my $ppStatsFromMetadata = can_run('ppStatsFromMetadata') or (warn "Can't find ppStatsFromMetadata" and $missing_tools = 1);
    74 if ($missing_tools) {
    75     warn("Can't find required tools.");
    76     exit($PS_EXIT_CONFIG_ERROR);
    77 }
    7882
    7983my $cmdflags;
Note: See TracChangeset for help on using the changeset viewer.