{
{  ACTIVE_SET_TABLE   (AST)
{
{  PURPOSE:
{    The active set table maintains information about all sets
{    with at least one volume active.
{  WHEN ACCESSED:
{    ALL accessing is done by the Set Manager.
{    MODIFIED
{    -  When sets are created, or purged, or volumes added too or
{       removed from sets, the change is reflected here.
{    -  The permanent file root catalog locator is stored in the
{       AST, as well as a lock for the permanent file root.
{    -  When volumes become active or inactive the AST is updated.
{    READ
{    -  The pf root is returned to permanent files.
{    -  Information is returned to device management when requested
{       on assigning volumes.
{  LAYOUT:
{    The AST is an adaptable array.
{  PRIMARY KEY:
{    set name
{  RESIDENCY:
{    A pointer to the AST (stv$p_ast) is a static ring 1 variable.
{    The table is allocated in the mainframe pageable heap.
{    All reading or writing occurs in ring 1.
{  LOCKING:
{    A global exclusive interlock to this table is maintained as
{    a ring 1 static variable.
{  FIELDS:
{    stt$active_set_entry = record
{      case entry_type
{      = stc$valid =
{        set_name: The name of the active set.
{        unique_set_name: The unique name of the active set.
{        master_vsn: The name of the master volume of the set.
{        master_internal_vsn
{        p_member_entry_list: This is a pointer to a list of members
{              in the set.  Reference decks stdmel, sthmel.
{        access_status: This indicates whether to allow access to
{              the set for permanent file operations.
{        number_of_jobs_using_set: This is the number of jobs
{              doing permanent file operations on this set.
{        case master_ever_up:  This indicates whether the master
{              has ever been active since this active set entry
{              was established.  The only way this could be FALSE
{              was if a member volume was the first volume active
{              in the set.
{        = TRUE =
{          set_owner: The name of the owner of the set
{          master_dm_packet_storage: This indicates whether the
{                dm_packet has ever been stored for the master.
{          master_volume_activity: This indicates whether the
{                master volume of the set is currently active.
{                If it is active the avt_index is maintained.
{          pf_lock: A lock set/ cleared by requests from PF.
{          case pf_root_ever_stored: Has the PF ROOT ever been
{                stored since the set was created.
{          = TRUE =
{            pf_root_size: The size in bytes of the root locator.
{            p_pf_root: a pointer to the pf root.  Assumed to be
{                  an adaptable sequence.
{
