phweb question specific to vms - solved
Joe Boyle
joeboyle_adt@hotmail.com
Mon, 5 Jul 2004 21:15:16 +0100
Many thanks Chris,
1.
Of course, the LNM$JOB was only ever required because a call to quiz or a
ghost file subprocess occurred, so the logical had to be available to the
job tree; in this case, the variable is required by the process setting the
variable, which is presumably unique to Phweb ?
2.
Prompt the user in the login Phweb screen for a username - verify that it is
unique, and then, after analyzing your usernames, create directories so that
they reflect the number of entries ( on average ) e.g. you could name them
as "D" + username[1:n] where n is set to reflect reasonable numbers of files
per directory - it all depends on the volume of usernames you are catering
for.
3.
Regularly analyze 2 so that 3 is catered for.
-----Original Message-----
From: powerh-l-admin@lists.sowder.com
[mailto:powerh-l-admin@lists.sowder.com] On Behalf Of Chris Sharman
Sent: 05 July 2004 16:14
To: PowerH List
Subject: Re: phweb question specific to vms - solved
Joe Boyle wrote:
> GREAT code :-)
>
> but just a couple of points,
>
> 1. am really surprised that "LNM$PROCESS" worked, I seem to recall
> nearly always having to use "LNM$JOB".
Indeed - lnm$process will only work if the subprocess is created after
the logical (because new subprocesses get a copy of process logicals) -
subsequent run commands (in an existing subprocess) won't see updated
logicals, unless they're LNM$JOB.
Where your quick screens are themselves subprocesses of a web master
process, though, LNM$JOB obviously won't work at all, unless you qualify
you logical names with the quick screen's pid, which would be very hard
to do - easiest might be to make your subprocesses log out, so you get a
new one for each run command.
> 2. to address's Chris's point on large directories, you might aswell go
> the whole hog and create a directory to put the file in.
But where are you going to put that directory ;)
Seriously though, my preferred solution is to devise a hierarchy to
create a directory to every 1000 files or so - that gets you up to a
million files without stressing the vms directory management unduly.
[the actual limit is a directory size of 128 blocks pre-7.2 or so, and
somewhat larger (unspecified) after that. The symptoms of bloat problems
are obscure, usually very slow directory operations (add,delete), very
occasionally %RMS-F-DME from DCL f$search or similar. The cure is (1)
give a reproducible copy to VMS support, if you can (I've never
succeeded, other than by letting them log in to see for themselves).
(2) tidy the directory
(3) dfu dir/compress/trunc ! off freeware disk
The cause is that VMS ODS2 directories are primitive structures, and
adding/deleting can involve shuffling up, which is fine until you get
too big to cache. 7.2(ish) removed the 128 block limit.]
Chris
-----------------------------------------------------------------------
Any views expressed in this message are those of the sender and not
necessarily those of CCA Group. The unauthorized use, disclosure,
copying or alteration of this message is forbidden. The contents of
this message may be confidential and/or privileged, copyright CCA Group
and are intended solely for the use of the individual or entity to whom
they are addressed. Whilst this message has been scanned, CCA Group
cannot guarantee that it is virus free or compatible with your systems
and accepts no responsibility for any loss or damage arising from its
use. The recipient is advised to run their own anti-virus software. If
you receive this message in error please contact
postmaster@ccagroup.co.uk immediately, destroy any copies and delete it
from your computer systems.
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Mailing list: powerh-l@lists.sowder.com
Subscribe: "subscribe" in message body to powerh-l-request@lists.sowder.com
Unsubscribe: "unsubscribe <password>" in message body to
powerh-l-request@lists.sowder.com
http://lists.sowder.com/mailman/listinfo/powerh-l
This list is closed, thus to post to the list you must be a subscriber.