File Optimizer frequently asked questions
Before contacting Hewlett-Packard Company for a problem you are
having with Disk File Optimizer software, please read through the
Frequently Asked Questions (FAQs) as well as the product release
notes. In many cases, you will find the information you need.
Answers to Frequently Asked Questions
If the system crashes, will DFO corrupt files?
No. DFO uses only published OpenVMS interfaces to the file system
to accomplish its tasks. Data integrity is guaranteed by these interfaces.
Further, the file optimizer never modifies nor accesses user data.
If an ongoing defragmentation operation is interrupted by a system
crash, the volume may be left in a non-optimal state; that is, files
may not be as defragmented as they could be and they may not be
placed where they would have been placed had the file optimizer
completed. However, when the system is brought back up, files on
that volume are accessible and will not have suffered any integrity
Does DFO change the modification date on the file?
No. No dates in the file header are changed.
Will DFO run on my database disk (Rdb for example)?
Yes. If the database is open, DFO does not defragment the database
file. If the database is closed, DFO treats the database file as
any other file.
How do I check if the scheduler is running?
Use the following command to check if the scheduler is running on
$ SHOW SYSTEM/OUTPUT=X.X $ SEARCH X.X DFG
If the scheduler is running, you will see DFG$node_name as shown
218002A8 DFG$LUNTIC LEF 6 4091 0 00:01:03.21 1263 1781
How do I monitor the progress of a defragmentation process?
You can monitor the progress of a defragmentation job using the
$ DEFRAGMENT MONITOR script_name or volume_name:
Can I defragment a RAID array?
Yes. A controller-created RAID array appears as a normal, but possible
very large, logical volume and is defragmented as such. The logical
volumes presented by the StorageWorks RAID Software for OpenVMS
or POLYCENTER Disk Striping from RAID 5 arrays or stripesets may
also be defragmented. When you create a script, specify the RAID
array. Do not defragment individual members of the RAID array as
they consist of one large file that is not fragmented and should
not be moved.
Can I defragment a shadow set?
Yes. When you create a script, specify the DSAx: volume. Do not
defragment individual members of the shadow set.
How do I know when it is time to defragment INDEXF.SYS.
There are two indications that INDEXF.SYS needs defragmenting:
- If you receive a "file header full" error, you should defragment
INDEXF.SYS. This error means that INDEXF.SYS cannot extend any
more without the file header extending into another header. The
file header cannot have more than one header.
- If INDEXF.SYS has more than five extents, it is a candidate
for defragmentation. By OpenVMS file system design, INDEXF.SYS
has a minimum of four extents. By DFO product design, DFO will
only defragment INDEXF.SYS if it has more than five extents.
Use the following command to check the number of extents in INDEXF.SYS:
$ DEFRAGMENT SHOW volume_name:/VOLUME/LOCATION=INDEXF.SYS
Can you defragment INDEXF.SYS on a system boot volume?
No. You have to dismount the disk before you can defragment INDEXF.SYS.
How long should I expect a defragmentation operation to take?
The time for a defragmentation operation to run depends on the following
- How fragmented the volume is
- How much free space is available
- How busy the volume is with file creation and deletion
Many volumes can be defragmented in less than an hour. Some volumes
can take more than 24 hours. The more the volume is fragmented,
the more work DFO has to do. If this the first time the volume is
defragmented, the defragmentation operation could take a long time.
If the defragment processes are scheduled regularly, they will take
How can I truncate directories?
Some users have directories with large allocated unused blocks after
files have been deleted. This results in the need to truncate these
directories. DFO does not provide this feature because it is already
available using the OpenVMS DCL command SET FILE/TRUNCATE file_name.DIR.
The following shows an example using the SET FILE/TRUNCATE command
to truncate a directory by deleting the unused blocks:
$ DIRECTORY/SIZE=ALL DIR/SIZE=ALL [SLICK]MAIL.DIR
$ SET FILE/TRUNCATE [SLICK]MAIL.DIR $ DIR/SIZE=ALL [SLICK]MAIL.DIR
Total of 1 file, 115/116 blocks.
Notice in the above example that the directory is 140 blocks in
size but the end of file is at block 115. The directory is then
truncated to 116 blocks with the SET FILE /TRUNCATE command.