uucp delivery order?

Jim Rosenberg jr at amanue.UUCP
Sun Jul 9 13:27:38 AEST 1989


I asked this question once before & got a thundering silence -- sorry if I
missed any replies, but I *still need to know*.  How can I guarantee that uucp
will deliver jobs to a remote system in the order in which they were queued?
More specifically, how can I issue a series of uux requests and be sure that
the uuxqt at the remote end will execute them in the same order?  I have HDB
at one end, and by the time the system is in production will have HDB at the
other end too.  The system will be Sytem V.3 in production, if that makes any
difference.

My *very strong impression* is that uucico simply uses the ordering you would
get by doing an ls -f C.* on the spool directory.  This is not at all
guaranteed to give the same order as ls -rt C.*, which is what I'd like.

If this suspicion is correct, then I could try to solve my problem by filling
up "holes" in the spool directory before issuing the uux request -- *PROVIDED*
I could completely lock any uuoids in the interim which might remove any files
from the spool directory.  (I really don't care if some other process sneaks
in "intervening" jobs -- that doesn't matter.  The process that will create
the jobs I'm concerned about has its own locking that guarantees only one
instance can run at once.)  For old-style uucp this is a dire pain, since all
sites share the same spool directory.  That would mean locking uucp across
all sites.  But for HDB I could at least lock the site in question, fill up
holes in the spool directory, then unlock the site.  Is this good enough?  Is
there a simpler way?

Somehow this makes me nervous.  Does the cleanup daemon honor a site lock?
Tampering with directory slots like this seems like a real kludge, and there's
no way I can think of to lock the directory in a truly safe way that's
guaranteed to be reliable.

Not to mention the problem that even if I can guarantee that uucico on the
sending end sends jobs in chronological order, I still don't know if uuxqt on
the receiving end will *run* them in the same order!  If uuxqt runs jobs in ls
-f order for the receiver's spool directory, then no amount of clever fakery
on the sending end will help one wit.  If this is how uuxqt works then I fear
there may simply be no way to do this.

Aargh, am I asking for the impossible?  This seems like such a straightforward
thing to want to do, I'd have thought this issue would have been old hat.  I
notice news articles all the time where a reply has a lower article number
than the article to which it's replying; I wonder how much of that is from
uucico delivering jobs "out of order".

Any help appreciated.
-- 
 Jim Rosenberg
     CIS: 71515,124                         decvax!idis! \
     WELL: jer                                   allegra! ---- pitt!amanue!jr
     BIX: jrosenberg                  uunet!cmcl2!cadre! /



More information about the Comp.unix.wizards mailing list