I.G.Batten@fulcrum.bt.co.uk (Ian G Batten) (08/23/90)
After bad experiences in a previous job, I promised myself that I wouldn't get involved in running locally-hacked divergent versions of standard software. ``Take the standard, leave it alone''. Well, I'm now stuck at NNTP 1.5.7 + my hacks, so I'll try and obey it next time... I'd like other people's comments on some of what I've done. The main work has been in batch processing. I run C News, and I have recoded the queueing stuff so that the following happens: When the first batch is ready, it is moved to the correct location in in.coming/TIMESTAMP, opened, the decsriptor dup'd onto 0 and relaynews invoked directly. Enqbatch then returns, storing the name of the batch and the pid of the process. Later batches wait() for the current relaynews process (which has normally finished, for my case of a 68020@10MHz and a 64K line) and either unlinks the batch or moves it into in.coming/bad. This means that I have at any one time a maximum of one relaynews running. I pondered simply ignoring SIGCLD and allowing multiple relaynews to block on the lock, but this strikes me as poor practice. ian