Re: 19990729: NOAA LDM Training...

Bob,

Thanks for the positive comments about the LDM workshop.  Also, thanks a
bunch for your detection of the y2k bugs in the LDM and the decoders. The
LDM ones have been fixed but the decoders ones are scheduled to be fixed.

Robb...

On Thu, 29 Jul 1999, Unidata Support wrote:

>To: support@xxxxxxxxxxxxxxxx
>cc: lipschut@xxxxxxxxxxxx,
>cc: grubin@xxxxxxxxxxxx
>From: Bob Lipschutz <lipschut@xxxxxxxxxxxx>
>Subject: NOAA LDM Training...
>Organization: .
>Keywords: 199907292134.PAA13537


Robb et al,

Thanks for an enjoyable and informative class on ldm!  As
a configurer of ldm at FSL, I will appreciate having a
much clearer picture of the whole package.  While I have
had informal brushes with some of the admin tools, hearing
about them first hand offers insights that I'm sure will be useful as we try to extend our configurations to support
more data and users.

    Regards,

        Bob Lipschutz
        NOAA/Forecast Systems Laboratory
        303-497-6636


p.s. Out of curiousity, I took the liberty of downloading and inspecting the ldm decoders package. I suggest that you review the perl decoders for Y2K bugs. For example, here are some suspect sections of the metar decoder (I believe similar issues exist in the other perl decoders):


# process input parameters
if( $#ARGV == 0 ) {
        $cdlfile = $ARGV[ 0 ] ;
} elsif( $#ARGV == 1 ) {
        $cdlfile = $ARGV[ 0 ] ;
        if( $ARGV[ 1 ] =~ /^9/ ) {      <==== checks for '9X' arg
                $yymm = $ARGV[ 1 ] ;
        } else {
                $datadir = $ARGV[ 1 ] ;
        }
<snip>

# year and month
if( ! $yymm ) {
        $theyear = (gmtime())[ 5 ] ;   <==== doesn't account for "yrs since 
1900"
        $themonth = (gmtime())[ 4 ] ;
        $themonth++ ;
        $yymm = $theyear . sprintf( "%02d", $themonth ) ;

<snip>

$time = timegm(0, $mm, $hh, $mday, $themonth -1, $theyear, 0, 0, 0) ;  <=== 
ditto


As we discussed during the class, you'll also want to repair
the bug in mailpqstats:

# create 0 data report if no data received
if( ! $data ) {
        ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)
                gmtime( $basemtime );
        $mon++ ;
$bintime = sprintf( "%s%02d%02d%02d%02d", "19", $year, $mon, $mday, $hour ) ; <== should use '$year+1900'
        print MAIL "$type $host $bintime NONE 0\n" ;


==============================================================================
Robb Kambic                                Unidata Program Center
Software Engineer III                      Univ. Corp for Atmospheric Research
rkambic@xxxxxxxxxxxxxxxx                   WWW: http://www.unidata.ucar.edu/
==============================================================================