This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Justin, > We are having an issue when trying to pipe to a decoder using LDM 6.4.4 > > Here is our pqact.conf entry: > --- > NMC3 (^ASUS6)|(^SR(HW|PU|AK5|US27|US32))|(^S[RX]US[57]) > PIPE bin/decod_dcshef -v 2 -t 450 -d > /dcomdev/us007003/decoder_logs/decod_dcshef.log > tables/SHEFPARM > tables/stns/shef.tbl > /dcomdev/us007003/bufrtab.000 > A. E. G. P. R. S. T. U. X. > --- > > And here is the error in ldmd.log: > > --- > Nov 07 16:14:21 b2n1 pqact[614580] INFO: pipe: > bin/decod_dcshef -v 2 -t 450 -d > /dcomdev/us007003/decoder_logs/decod_dcshef.log tables/SHEFPARM > tables/stns/shef.tbl /dcomdev/us007003/bufrtab.000 A. E. G. P. R. > S. T. U. X. > Nov 07 16:14:21 b2n1 pqact[622728] ERROR: Couldn't > exec(bin/decod_dcshef): Bad address > Nov 07 16:14:21 b2n1 pqact[622728] NOTE: Exiting > Nov 07 16:14:21 b2n1 pqact[614580] INFO: pipe: > bin/decod_dcacar -v 2 -t 600 -d > /dcomdev/us007003/decoder_logs/decod_dcacar.log > /dcomdev/us007003/bufrtab.ARINC_ACARS > /dcomdev/us007003/bufrtab.E-ADAS /dcomdev/us007003/bufrtab.004 > Nov 07 16:14:21 b2n1 pqact[614580] NOTE: child 622728 exited with status > 1 > (bin/decod_dcshef-v2-t450-d/dcomdev/us007003/decoder_logs/decod_dcshef.logtables/SHEFPARMtables/stns/shef.tbl/dcomdev/us007003/bufrtab.000A.E.G.P.R.S. > T. U. X.) > --- > > The decoder is failing because it looks like the last 3 arguments are > not being passed in. Is there a limit on the number of arguments (in our > case 18) or length of the total string for the decoder? pqact(1) limits the number of elements in the argv[] array to 16. Subtracting the pathname of the program to be executed (argv[0]) and the terminating NULL pointer, this means that the limit on the number of arguments to a PIPE decoder is 14. This is too small. I'll fix it and make a new release. In the meantime, can you use fewer arguments? Regards, Steve Emmerson Ticket Details =================== Ticket ID: GPE-962059 Department: Support LDM Priority: Normal Status: Closed