- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: Maximum Directory Entries
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-08-2004 07:08 PM
07-08-2004 07:08 PM
Re: Maximum Directory Entries
When the 108 blocks must be allocated, the direcory is blocked for 30 seconds.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 01:17 AM
07-09-2004 01:17 AM
Re: Maximum Directory Entries
It is clear that big directory files can not be used by applications that frequently create files or by real time applications.
Now let's see how long delete will need ...
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 01:36 AM
07-09-2004 01:36 AM
Re: Maximum Directory Entries
I tried DFU 2.6 delete dev:dir/dir but I get
%DFU-I-PARSEDIR, Parsing directory tree OPS$MGR:[WVW.TEST]*.DIR;1
%DFU-W-NOSUBDIR, no subdirectories found in this tree
%DFU-I-CLEANUP, Deleting OPS$MGR:[WVW]TEST.DIR;1...
%DFU-E-READERR, Error reading directory OPS$MGR:[WVW]TEST.DIR;1,
%SYSTEM-F-BADPARAM, bad parameter value
%DFU-E-NOTDEL, Error deleting file TEST.DIR;1 ,
%SYSTEM-F-DIRNOTEMPTY, directory file is not empty
%DFU-I-READY, DELETE command ready
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 01:40 AM
07-09-2004 01:40 AM
Re: Maximum Directory Entries
I will see if I can find it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 02:26 AM
07-09-2004 02:26 AM
Re: Maximum Directory Entries
All have the same problem.
The cluster will know what to do this WE.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 02:49 AM
07-09-2004 02:49 AM
Re: Maximum Directory Entries
Instead of deleting, can you save whatever is valuabel on the disk, and re-init the disk? Much faster!
If you do dedice on the delete *.*.* then be sure to monitor its progress (I know you will), because it may 'never finish', that is it might take more than a weekend.
You may want to try my script below. It is from the days before I switched to perl :-). It just feeds delete a number of files in reverser order over and over again. You may want to tweak teh command line length (there is a test for 200 in there).
The reverse order will prevent the shuffling when a directory block empties. The multiple files somewhat reduce the delete image activiations.
fwiw,
Hein.
$if p1.eqs."" then goto help
$directory/out=sys$Login:delete.tmp/col=1 'p1
$sort /key=(pos:1,siz:-1,desc) sys$Login:delete.tmp sys$Login:delete.tmp
$open/read/error=clean_up sorted sys$Login:delete.tmp
$init:
$read/end=clean_up sorted f
$l2 = f$len(f)
$if f$loc(";",f).eq.l2 then goto init
$files = f
$loop:
$read/end=done sorted f
$l1 = f$len(f)
$if f$loc(";",f).eq.l1 then goto loop
$if l2.lt.200
$ then
$ files = files + "," + f
$ l2 = l2 + l1 + 1
$ else
$ delete 'p2' 'files'
$ files = f
$ l2 = l1
$endif
$goto loop
$done:
$delete 'p2' 'files'
$clean_up:
$close/nolog sorted
$delete sys$Login:delete.tmp;,;
$exit
$help:
$type sys$input
Usage:
P1 (required) = wild card file spec, with optional DIR selection qualifiers
P2 (optional) = delete command qualifiers (/LOG or /CONFIRM)
$exit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:00 AM
07-09-2004 03:00 AM
Re: Maximum Directory Entries
$ bac/lo/del disk:
is fast, but I have not tested.
I think Hein method should be faster.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:02 AM
07-09-2004 03:02 AM
Re: Maximum Directory Entries
I was just going to write the same script.
But then I remembered something undocumented : set file/nodir.
So :
$ set file/nodir test.dir
$ del test.dir;
$ def sys$output nl:
$ def sys$error nl:
$ anal/dis/rep dsa1:
It is now running since 5 minutes. Curious how long it will take ...
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:04 AM
07-09-2004 03:04 AM
Re: Maximum Directory Entries
bac/lo/del dir nl:a.bck/sav
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:07 AM
07-09-2004 03:07 AM
Re: Maximum Directory Entries
:^).
(btw... I have a 'set file /dir' tool (set_dir) on some freeware (V4?) in the rms_tools directory if you like to undo the set file/nodir :-)
Groets,
Hein.
Stuur me eens een email: hein apestaartje hp punt com.
ps... heb jij een ligfiets?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:32 AM
07-09-2004 03:32 AM
Re: Maximum Directory Entries
But if you stop de anal/dis/rep after 15 minutes, you can delete them a lot faster in syslost.
En ja, ik heb 3 fietsen.
1 Gazelle voor met de vriendin te gaan rijden
1 Twister LX voor op te liggen langs de waterwegen (Schelde, Ruppel, Nete en kanalen)
1 Bulls 7.8c voor in de Ardennen af te gaan zien (op asfalt)
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 03:44 AM
07-09-2004 03:44 AM
Re: Maximum Directory Entries
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-09-2004 06:51 AM
07-09-2004 06:51 AM
Re: Maximum Directory Entries
then a small hack for fast deletes.
It doesn't surprise me to see 15 second or
longer delays extending a large directory.
Not only do you have to find the 30k blocks
of contiguous space (which may mean trolling
the entire bitmap), but you then have to
copy the entire directory to its new
location - all 30k blocks in the example
here. The original space needs to be
deallocated and the header updated.
Note that the create/dir command allows you
to allocate the space up front so you don't
have to endure the frequent extends for
directories expected to be very large.
While the old RMS 128 block directory
performance hit was removed, there is still
an XQP knee. The XQP keeps a small index
into the directory using the first few
characters of the filename in each block. For
small directories, a file lookup gets
directly to the correct block in the
directory file and begins a search there.
The index is limited in size (one block)
and as the directory gets larger, the
number of characters used for the index
gets smaller. At a few thousand blocks,
we're down to the first 3 characters of
the file name. If your filenames are
not different in the first 3 characters,
then the entire directory has to be
scanned (there may be a binary search here,
I haven't looked at this code in a long,
long time). The mail directory is a good
example of what not to do - file names of
the form -
mail$nnnnnnnnnnnnn.mai.
The directory shuffle operation used to be
very, very painful. It was done one block
at a time. It is currently done 127 blocks
at a time (last time I looked) and so is
much faster. It is still an n^2 operation
and I can imagine you still see delays on
the shuffle on very large directories.
Aside from DFU or a special program, the
fastest way I've found to delete all files
in a directory is to use anal/disk - you
were so close. Create a file consisting
of a line of 'd' for each file in the
directory -
$ create ans.x
d
d
d
d
^z
$ set file/nodir foo.dir
$ define/user sys$command ans.x
$ anal/disk/repair/confirm disk$xxx
- lots of messages about lost headers -
$
Note that ans.x must have more 'd's than
the number of files you're about to toss.
Also note that lost files you might like
will also disappear as well. As I recall,
it also helps to define sys$output to nl:
This is generally much, much faster than
even deleting from the rear of the directory
even from a dedicated program.
Mark
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-11-2004 05:38 PM
07-11-2004 05:38 PM
Re: Maximum Directory Entries
How do you explain that a big wait is done every time 1 block of the directory is taken into use ? (e.g. 20 seconds foir extending the directory, 15 seconds each time 1 block of it is used)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-11-2004 07:15 PM
07-11-2004 07:15 PM
Re: Maximum Directory Entries
Regards Ton (DFU Author).
PS There will be a new DFU (V3.1) distributed on the next freeware.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-11-2004 08:59 PM
07-11-2004 08:59 PM
Re: Maximum Directory Entries
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-11-2004 10:30 PM
07-11-2004 10:30 PM
Re: Maximum Directory Entries
In any case, Marks solution for deleting the files worked. It took 2 cpu minutes to delete all files (didn't check wall time).
Hope that Mark gets his points Rob. And sorry for all the post you got. But I think the test was useful.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-13-2004 12:01 AM
07-13-2004 12:01 AM
Re: Maximum Directory Entries
The good news is that I'll fix it with DFU V3.1. But given the low frequency of this issue, I will not make a fix for previous DFU versions, and thus it won't be fixed for previous VMS versions (thats the bad news).
DFU V3.1 requires OpenVMS Alpha V7.3-1 and higher, or Itanium 8.1 and higher!
Regards, Ton
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-13-2004 06:14 AM
07-13-2004 06:14 AM
Re: Maximum Directory Entries
Sorry to butt in but I have been trying to dig my production environment out of a similar (but smaller) mess, where roughly 18,000 files were being deleted every day, and then re-created in the same directory using a date stamp at the beginning of the file name.
I.E., each day's files would be for today's date, "20040713_" followed by the more unique information (location, function, etc.)
I broke this up into 8 directories to get the directory size down somewhat, but I still need to drill down further, especially given your description of how the XQP works with an index.
Can you possibly provide an algorithm relating the size of the directory to the number of characters per file name in the index?
Regards,
Jay
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-13-2004 07:38 AM
07-13-2004 07:38 AM
Re: Maximum Directory Entries
Jay, why don't you re-enter your question as a fresh topic, with a link back to this one?
Just a suggestion,
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-13-2004 06:36 PM
07-13-2004 06:36 PM
Re: Maximum Directory Entries
I relinked your dfu on 7.3 and this seems to work. Is it allowed to relink and if so, down to what version ?
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-19-2004 12:02 AM
07-19-2004 12:02 AM
Re: Maximum Directory Entries
So you need V2.7 on previous VMS versions.
Regards, Ton
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-22-2004 07:46 AM
07-22-2004 07:46 AM
Re: Maximum Directory Entries
Second, a place where I see this problem is in the ABS directories. ABS has to be one of the worst-written records managers I have ever seen, or else the documentation is the worst-written documentation, 'cause our Ops guys have spent whole careers trying to keep the ABS directory clean and they can't do it.
I remember having to do some tricksy deletes in an ABS directory when we were prepararing to migrate from VAXen to Alphas. At least some of the tapes were still good, so we couldn't just toss everything into the round file. Though I was sorely tempted. The batch job that trimmed the directory took literally days because we couldn't INIT the disk, we had to preserve it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-25-2004 09:41 AM
07-25-2004 09:41 AM
Re: Maximum Directory Entries
search list logicals are a great way to present multiple physical directories with reports as one resource to applications reading the reports. We use this in our own environment.
Still you either need a "cooperative" writer that creates the reoports in various directories or you need to write a procedure that picks the reports up in the initial direcotry and distributes them from there. What to do pretty much depends on your control over the application.
Gretings, Martin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-25-2004 07:57 PM
07-25-2004 07:57 PM
Re: Maximum Directory Entries
Very little change to the application, but will help break up the directories.
Cheers, Rob.