Description of ERALIAS

Download count: 12 this month, 4925 altogether.
Downloads for ERALIAS :
  VMARC archive: v-8K

From Kris Buelens, IBM Belgium

ERALIAS is an SFS administration exec: it can scan a filepool for "Erased ALIASes" and removes them.

What is an ALIAS ?

For CMS, an ALIAS looks like a normal SFS file.  For SFS, an ALIAS is another pointer to a BASE file.  Using an ALIAS to access the data of a file does not degrade performance.  Both the aliases and the base file point to the same data.

Aliases are created with the CREATE ALIAS command; they can be removed by the ERASE command.  The QUERY ALIAS command can tell if a file is an ALIAS and what the base file is; or, -when executed for a base file- tell which alias(es) point to it.

What is an ERASEd ALIAS ?

When the base file is erased, SFS does not erase the ALIAS(es) pointing to it. These aliases get the status ERASED.  Additional information:
  • There is no command to obtain the name of the base file the alias was pointing to.
  • When the base file would be recreated, the state of the alias does not change, it will not point to the recreated file.
  • In FILELIST, with it's default ALLFILE option, erased aliases are still displayed.  But, as the file attributes -such as last modification date- are replaced by dashes, the default "sort by date" option sends them to the back of the list.
  • LISTFILE at the other hand will not display erased aliases, unless using the ALLFILE option.
  • STATE and friends won't see them either, so to "classic" CMS programs an erased alias file no longer exists at all.
  • Erased aliases do occupy some space in the SFS catalog (storage group 1), but no space is used on the data disks (storage groups 2 to n)
As we have an application that uses many aliases to save lots of space, we also have lots of erased aliases.  So the ERALIAS EXEC was written, and it is run weekly to cleanup these orphans.
 

Revoked Aliases

A Revoked alias is created when you lose read permission to the base file.  Revoked aliases are much like erased aliases, there is however one small difference:
The difference with an ERASEd alias is that QUERY ALIAS still reveals what base file it is pointing to.  Hence you can try to get read permission to the file again.  Note however a simple GRANT AUTH command on the base file does not re-active your alias.  It remans in revoked state until you issue a new CREATE ALIAS command for it.
So, as revoked aliases still contain useful information, our ERALIAS EXEC does not remove them.  With a small change in the exec you could remove them too, or take any other action:
    if status='R' then  ... handle revoked alias ....