[comp.soft-sys.andrew] Message from queuemail on RS/6000

oester+@rchland.ibm.com (Bob Oesterlin) (10/24/90)

The background queuemail daemon gives messages like the following when
doinglocal delivery in an AFS environment:

<fdplumb>File '/afs/rchland.ibm.com/usr1/ent/Mailbox' (opened by open)
isstill open.  ( 7:20:43 PM )
<fdplumb>Total of 1 open files.  ( 7:20:43 PM )

Delivery succeeds, but the messages bother me. Plumber is trying to tell
mesomething! What can I do to track down the problem? This only occurs
on my AIX3.1 systems, not my rt_aos4 or rt_aix221 systems.

Bob

nsb@THUMPER.BELLCORE.COM (Nathaniel Borenstein) (10/24/90)

Something is very odd, conceivably a bug in the fdplumber stuff itself. 
The thing is, the file it says is open is a directory, yet it says it
was opened by "open" rather than by "opendir".  Very peculiar.  One
approach might be to look through all the queuemail code for any place
where any "open" call might actually be issued on a directory rather
than on a file.

Does AIX 3.1 do anything weird with opening & closing directories?  If,
for example,  it renamed "closedir" to something else, then the
fdplumber stuff needs to be augmented to recognize the new name for it;
otherwise it is simply missing the closes, and printing out spurious
messages about directories that really have already been closed.  --
Nathaniel

Craig_Everhart@TRANSARC.COM (10/24/90)

The message is probably coming from trymail, not queuemail.

Trymail doesn't do an opendir of a Mailbox directory.  However, as you
recall, vmail() (a routine from overhead/mail/lib -> libmail.a) will
look to see if its destination directory is in AFS; the IsOnVice()
procedure takes an open file descriptor, so vmail() typically open's and
close's the Mailbox directory itself around making this check.  But, Bob
has tinkered with his copy of vmail.c on rs_aix31 because the
AFS-dependent ioctl (VIOCIGETCELL) doesn't work in the AFS port to
rs/6000's yet.  Until he tells me otherwise, I'll assume that Bob's
tinkering eliminated the close() done in overhead/mail/lib/vmail.c, line
117 or 122.

		Craig

oester+@rchland.ibm.com (Bob Oesterlin) (10/29/90)

*Blush*... Craig hit the nail right on the head! I #ifdef'd out the
close at line 117.

Never mind....

Bob