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

[LDM #UCO-749182]: pqinsert and SIGCONT



Tom,

> Does pqinsert send a SIGCONT to the LDM process group?

Only if the pqinsert(1) process was started by an EXEC entry in the LDM's 
configuration-file.

> Looking at the pqinsert.c source code it does not appear to (perhaps it
> buried in another module).

The SIGCONT is sent by the product-queue access module (pq.c).

> We would like to use pqinsert as our primary
> means of inserting data into the product queue and wake the upstream
> LDM immediately upon insertion (avoiding the up to 30 second wait for
> the upstream LDM to wake up on its own).

I recommend starting a script via an EXEC entry that uses pqinsert(1).

> According to this web page "Data-Product Ingesters
> 
> <http://www.unidata.ucar.edu/software/ldm/ldm-6.12.14/basics/programs.html#ingesters>"
> 
> an ingestor "... should send a SIGCONT
> 
> <http://www.unidata.ucar.edu/software/ldm/ldm-6.12.14/basics/glindex.html#SIGCONT>
> 
> signal to its process group
> 
> <http://www.unidata.ucar.edu/software/ldm/ldm-6.12.14/basics/glindex.html#process%20group>
> 
> whenever it inserts a data-product
> 
> <http://www.unidata.ucar.edu/software/ldm/ldm-6.12.14/basics/glindex.html#data-product>
> 
> into the product-queue
> 
> <http://www.unidata.ucar.edu/software/ldm/ldm-6.12.14/basics/glindex.html#product-queue>."
> 
> Since, pqinsert is an ingestor it should send it. However, it also says
> that pqinsert is "an ingester that not only runs outside the LDM process
> group but also self-terminates", which implies that it won't send it,
> correct?

The signal is sent by the product-queue module, which pqinsert(1) uses.

> How can pqinsert be used to send a SIGCONT to LDM process group?
> My notes from the LDM workshop class say that pqinsert has to be started
> from an EXEC line in the ldmd.conf file. I don't understand how that
> would work unless there is a pqinsert command line option to keep it from
> self-terminating and its accepts messages for each insertion. Perhaps
> you meant, "whatever, non-terminating process calling pqinsert must be
> started by an ldmd.conf EXEC entry"?

Start a script that never exits and uses pqinsert(1) in a loop.

Alternatively, execute a program outside the LDM system that sends a SIGCONT to 
the process-group identified by the file "ldmd.pid" in the LDM user's 
home-directory.

> Would it work if pqinsert is simply called by a process running as the
> ldm user?

See previous answer.

> Any advice would be greatly appreciated.
> 
> Tom Jordan, MSCS
> Software Engineering
> Harris Corporation
> Office: 321-309-7004, address@hidden<mailto:address@hidden>
> Location: R5/J176

Regards,
Steve Emmerson

Ticket Details
===================
Ticket ID: UCO-749182
Department: Support LDM
Priority: Normal
Status: Closed


NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us.