LSVFILER has been modified for release 1.5n to automatically re-access R/O
disks which have been modified since they were last accessed. This allows user
programs to read files on shared R/O minidisks without having to worry about
re-accessing the minidisks if they get a read error (the worst being that you
usually don't get a read error - you get garbage data, or sometimes a FILE
SYSTEM ERROR DETECTED, but you seldom get an ERROR '3' READING FILE). This
automatic re-accessing takes place only if:
- The target minidisk is accessed R/O.
- LSVFILER has been NUCXLOADed.
- The NOREACC option was not specified.
- The disk has been altered since the last ACCESS.
An informational message is printed before the disk is re-accessed. Nothing is
printed if it is not, of course. This new facility will cause one additional
I/O operation to take place in the "normal" case where the disk has not been
modified since last access. The additional CPU time required to perform this
test is less than 0.005 sec on a 4381-11 (=4341-12). The I/O time may,
however, considerably slow down read operations on very small files, which is
why the NOREACC option was provided. In most cases, this will be negligible.
Please note that when the STOR option is specified, the test will take place
only if the file was not previously held in the in-storage cache. That is, it
will be done only when it is known that the file has to be actually brought in
from disk. No ability exists to detect that the in-storage copy of a file has
become obsolete, as this would considerably slow down access to these files.
This new feature should solve the 'L.0 not numeric' REXX error that occurred
from time to time when DOMAIN NAMES was modified and LISTSERV was not
rebooted.
LIAISON readers: The new version of the program is available from
[log in to unmask] The remainder of this note will probably not be of any
interest to you.
LSVIUCV has been modified for release 1.5n to return some info from the SFBLOK
to LSVPROF, which will pass it on to LSVRDR and minions. The main purpose is
to avoid getting into endless problems with local mods to the QUERY READER
commands.
*** FLAME ON ***
I have written myriads of CP mods since I started working on VM, some of which
used to alter the output of standard commands. However this alteration takes
place ONLY WHEN THE OUTPUT IS BEING WRITTEN TO THE TERMINAL, that is, when
VMCONBUF is zero. I never had any problem with my local mods breaking standard
programs. Just because IBM broke a lot of programs because they implemented
NLS the wrong way doesn't mean that local mods should compete for an entry
into the Guinness book of records :-) I agree that using info from the SFBLOK
is bound to be more transportable than using QUERY READER output. But I don't
like local mods that break non-local software, especially when it can be
easily avoided, and above all, when it creates additional work for *me* :-)
*** FLAME OFF ***
Anyway, I should now be free from the majority of problems caused by QUERY
READER mods, and the code will also run a bit faster. However I'm now left
with very little addressability space in LSVIUCV (hopefully enough for most
local mods - if not, I'll try to do something to save a few dozen bytes).
Eric
|