HP OpenVMS Systems

ask the wizard
Content starts here


» close window

The Question is:

I have a cluster environment with 16 individual disks.  The disks report lower
 free space than is actually there with show device d.
I found this by dir [...]/size/grand down each disk.  The difference can be
 1,000,000 blocks on a 4.3 gig disk.
I also have DFG V2.4 running to defragment the disks.
I have tried analyze/disk/repair, with no success.
I dont want to backup/image each disk and then restore.
Are there confused links lost somewhere ???
How do I get round this and reclaim my space ?
Many thanks

The Answer is :

  On system disks and on any other disk with alias entries for files
  or directories, the situation where the DCL command DIRECTORY shows
  larger values for allocated storage than does SHOW DEVICE is entirely
  normal and entirely expected (mis)behaviour -- this difference has to
  do with the ways that the commands acquire the information displayed.
  The DIRECTORY command does not account for file and directory alias
  entries, and thus adds the storage required by alias-related file
  accesses, once for each alias entry.  This causes erroneously high
  values for disk usage for disks with alias entries.
  Further, the DIRECTORY/SIZE=ALLOCATED command will show you the value
  of the amount of storage actually allocated, while the default DIRECTORY
  command displays the amount of storage actually used.  The amount of
  storage allocated is at least equal to the amount actually used, and
  is normally rather larger than the amount actually used.  (To see this
  difference in practice, experiment with the DIRECTORY/SIZE=ALL command.)
  The SHOW DEVICE command looks at a value maintained (in a lock value
  block) for the number of blocks used, and this value looks strictly at
  the block-level storage and low-level disk storage allocation and
  deallocation activity.  This is generally the more reliable display
  for total storage used (when considering disks with alias entries),
  though there are cases where the value in the lock value block can
  potentially drift due to certain unrecoverable error conditions that
  can arise when (for instance) a cluster member exits the cluster in
  an abrupt fashion.
  The usual approach for resynchronizing the value in the lock value
  block with the actual storage involves the use of the DCL command
  the lock value block and to to free up any unallocated storage embedded
  in the file structure (such as an extent cache -- maintained by each
  node accessing the volume, and an area that is not deallocated during
  a system crash), and dismounting and then remounting the disk to reload
  the lock value block.

answer written or last revised on ( 30-MAR-2000 )

» close window