[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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: address@hidden
> >cc: address@hidden,
> >cc: address@hidden
> >From: Bob Lipschutz <address@hidden>
> >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
address@hidden             WWW: http://www.unidata.ucar.edu/
===============================================================================