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

19990917: Problem with pqact PIPE action



>From: Rick Grubin <address@hidden>
>Organization: NOAA/FSL
>Keywords: 199909171807.MAA22040 pqact PIPE

Rick,

>This is my entry in a pqact file to process some data (it's broken up
>to multiple lines here for readability):
>
>EXP     ^RAP\.Icing\.IIDA\.([A-Z]+)\.([0-9]+)\.([a-z]+)\.([a-z]+)
>        PIPE    -close /usr/local/rtsys/scripts/storeIIDAData 
>                -logDir /usr/local/rtoper/log/storeIIDAData -format \1 
>                -infileName \2.\3.\4 -outfileName \2 
>
>When executed, following is the behavior exhibited, as noted in the LDM
>logs:
>
>Sep 17 15:24:24 3Q:robin pqact[3564197]: pbuf_flush (4) write: Broken pipe
>Sep 17 15:24:24 3Q:robin pqact[3564197]: pipe_dbufput:
>/usr/local/rtsys/scripts/storeIIDAData-logDir/usr/local/rtoperlog/storeIIDADat
> a-formatASCII-infileName99091715.fsl.gz-outfileName99091715 write error
>Sep 17 15:24:24 3Q:robin pqact[3564197]: pipe_prodput: trying again
>Sep 17 15:24:24 3Q:robin pqact[3564197]: pbuf_flush (4) write: Broken pipe
>Sep 17 15:24:24 3Q:robin pqact[3564197]: pipe_dbufput:
>/usr/local/rtsys/scripts/storeIIDAData-logDir/usr/local/rtoperlog/storeIIDADat
> a-formatASCII-infileName99091715.fsl.gz-outfileName99091715 write error
>Sep 17 15:24:24 5Q:robin pqact[3564197]: child 3598311 exited with status 1
>Sep 17 15:24:24 5Q:robin pqact[3564197]: child 3601338 exited with status 1
>
>Please note that the command to which data is piped, while having correct
>arguments formed, lacks white space between the arguments.

The output that gets sent to the log file has the spaces removed.  This is
not an error.

>The pqact.conf file is constructed using TABs.

OK.  You can verify the syntax of the pqact.conf file (to make sure that
nothing else is wrong) by running 'ldmadmin pqactcheck'.

>Other information: This error occurs on an SGI running IRIX64 v6.5.  When
>this same pqact rule is executed on a Sun Sparc running SunOS 5.6, it
>executes as expected (white space present, piped-to command receives
>correctly formed arguments).  I note that both of these platforms are
>supported by Unidata.

The broken pipe error indicates that the reader on the pipe exited before the
entire product was read.  This could happen a couple of different ways:

o the program that was reading the data from the pipe was exiting for
  some reason

o the program that was reading the data from the pipe was not allowded
  to write to whatever directory/file that it was told to write to

The easiest way to check either of these situations out is to have the
LDM write the product to a disk file and then run the program that is
failing by hand.  You will need to do this as the user that is running
the LDM so that you recreate the environment in which the failure is
occurring.  It is our experience that these problems are usually caused
by a permission problem with the ouput directory or output file.

>Thank you for your help.
>--
>Rick Grubin                  address@hidden
>NOAA  R/E/FS2               Forecast Systems Lab
>325 Broadway                (303) 497 6991 phone
>Boulder CO 80303-3328       (303) 497 7259   fax

Tom Yoksas