Checking the Access State of Metadata Repositories and the Repository Manager

About Metadata Repository Access States and Access Modes

The access state of a metadata repository indicates its current state with regard to client access. A metadata repository can exist in any of the following access states:
Online
Clients can read, write, and update metadata.
ReadOnly
Clients can read metadata but cannot write, update, or delete metadata.
Administration
Only users who are in the Metadata Server: Unrestricted role can read or write metadata. For information about this role, see Overview of Initial Roles, Groups, and Users.
Administration (ReadOnly)
Only users who are in the Metadata Server: Unrestricted role can read metadata. Users cannot write, update, or delete metadata.
Offline
Clients can neither read nor write metadata to the repository.
The access state of a repository depends on both the current state of the metadata server and the repository's registered access mode. The access mode of a SAS metadata repository is the repository's intended access state, as described in About SAS Metadata Repository Access Modes. When the metadata server is Online, the access state of a repository is equal to its access mode. When the metadata server is paused to the Offline state or the Administration state, the access state of a repository can change temporarily. When the metadata server is resumed, the repository's access state returns to its registered access mode.

How the Access State of the Metadata Server Affects the Access States of Metadata Repositories

Generally, the access state of a repository is the same as the access mode that is recorded in the repository's metadata. However, a repository's access state can change temporarily when the metadata server is paused to an Offline state or paused for administration. When the metadata server is resumed, the repository's access state returns to its registered access mode.
The following table shows how the access state of the metadata server affects the access state of a repository, based on the repository's access mode:
The Effect of Metadata Server States on Metadata Repository Access States
Metadata Server Access State
Metadata Repository Registered Access Mode
Metadata Repository Access State
Online
Online
Online
Online
Administration
Administration
Online
ReadOnly
ReadOnly
Online
Offline
Offline
Administration
Online
Administration
Administration
Administration
Administration
Administration
ReadOnly
Administration (ReadOnly)
Administration
Offline
Offline
Offline
Online
Offline
Offline
Administration
Offline
Offline
ReadOnly
Offline
Offline
Offline
Offline

About Repository Manager Access States

The repository manager is a library of tables that define the set of repositories that can be accessed by a SAS Metadata Server. An access state of ReadOnly or Offline for the repository manager is typically reflected in the following behavior:
ReadOnly
Clients can read and write metadata in repositories, but they cannot create or delete repositories or change their registrations.
Offline
The behavior can vary depending on whether a repository is available in memory. Assume that repositories are unavailable for reading or writing to all users.

Use SAS Management Console to Check the Access State of a SAS Metadata Repository

If the metadata server is online or is paused for administration, then you can use SAS Management Console to determine the current access state of a metadata repository, as follows:
  1. In the SAS Management Console Plug-ins tab, expand the Metadata Manager node.
  2. To view the access state of the foundation repository and any custom repositories that you have created, select the Active Server node. To view the access state of project repositories, expand the Active Server node and select the Project Repositories folder.
    For each repository, the access mode and the current access state are displayed in the table view, as shown in the following example:
    Table view in SAS Management Console showing repository access mode and current access state
    The table lists the following information for each registered repository:
    Access
    indicates the access mode of the repository as it is recorded in the Access attribute of the repository's metadata definition.
    State
    indicates the current access state of the repository. Generally, the access state of a repository is equal to its access mode. However, if the metadata server is paused to an Offline state or is paused for administration, then the repository's access state might be changed temporarily. See How the Access State of the Metadata Server Affects the Access States of Metadata Repositories.
    The Access and State fields are also displayed in the metadata repository properties. To see these properties, right-click the repository name in the Active Server tree, select Properties, and select the Registration tab.
Note:
  • If the metadata server is paused to the Administration state, then you must be in the Metadata Server: Unrestricted role to view the server's status in SAS Management Console.
  • If the metadata server is paused to the Offline state, then the access state of repositories cannot be displayed in SAS Management Console.

Use PROC METADATA to Check the Status of Metadata Repositories and the Repository Manager

Create and Run a PROC METADATA Program

If the metadata server is online, then you can use PROC METADATA to check the status of metadata repositories. To do so, use PROC METADATA to issue a GetRepositories method call that sets the OMI_ALL flag to 1. The GetRepositories method is part of the SAS Open Metadata Interface.
The syntax is as follows:
PROC METADATA
    SERVER="host-name"
    PORT=port-number
    USERID="your-user-ID"
    PASSWORD="your-password"
    IN="<GetRepositories>
        <Repositories/>
        <Flags>1</Flags>
        <Options/>
        </GetRepositories>";
    RUN;
Note:
  • To run this program, you must have ReadMetadata permission to all repositories on the SAS Metadata Server.
  • If the metadata server is paused to an Offline state, then you cannot use PROC METADATA to issue a GetRepositories method call.
  • If the metadata server is paused to an Administration state, then special user credentials are required to use PROC METADATA to issue a GetRepositories method call. The user must either (1) be a member of the Metadata Server: Unrestricted role or (2) be listed in adminUsers.txt, either with or without an asterisk.
For each repository that is registered to the metadata server, the GetRepositories method returns the values of the following attributes:
Id
specifies the repository's unique object identifier.
Name
specifies the name assigned to the repository.
Desc
contains a description of the repository.
Access
indicates the repository's intended access mode, which is specified in the Access attribute of the repository's metadata definition. This field corresponds to the repository's Access field in SAS Management Console. The possible values are OMS_FULL (which is displayed as Online in SAS Management Console), OMS_READONLY, OMS_ADMIN, and OMS_OFFLINE.
CurrentAccess
contains information that is used by metadata server processes. This field is displayed because it is sometimes used by SAS Technical Support in the resolution of metadata repository issues.
PauseState
indicates the current access state of the repository. This field corresponds to the repository's State field in SAS Management Console. The access state depends on both the current state of the metadata server and the repository's registered access mode, as described in How the Access State of the Metadata Server Affects the Access States of Metadata Repositories. An empty string means that the repository is online.
Path
indicates the path where the repository's data sets are located.
RepositoryFormat
contains the revision level of the metadata model that is used by the repository. A RepositoryFormat level that is less than the level of the server can cause the repository to have a PauseState (access state) of ReadOnly.
For more information about the METADATA procedure and the GetRepositories method, see SAS Language Interfaces to Metadata.

Example: PROC METADATA Output

The following is an example of output from PROC METADATA when the metadata server is online:
<GetRepositories>
   <Repositories>
      <Repository Id="A00000001.A00000001"
         Name="REPOSMGR"
         Desc="The Repository Manager"
         DefaultNS="REPOS"
         RepositoryType=""
         RepositoryFormat="12"
         Access="OMS_FULL"
         CurrentAccess="OMS_FULL"
         PauseState=""
         Path=”rposmgr”/>
      <Repository Id="A00000001.A50Q21KN"
         Name="Foundation"
         Desc=""
         DefaultNS="SAS"
         RepositoryType="FOUNDATION"
         RepositoryFormat="12"
         Access="OMS_FULL"
         CurrentAccess="OMS_FULL"
         PauseState=""
         Path=”MetadataRepositories/Foundation”/>
      <Repository Id="A00000001.A5IPLNM1"
         Name="Test Repository"
         Desc=""
         DefaultNS="SAS"
         RepositoryType="CUSTOM"
         RepositoryFormat="12"
         Access="OMS_READONLY"
         CurrentAccess="OMS_READONLY"
         PauseState="READONLY"
         Path=”MetadataRepositories/TestRepository”/>
This output in this example provides the following information:
  • For the repository manager (REPOSMGR): PauseState="" indicates that it is available.
  • For the Foundation repository: Access="OMS_FULL" indicates a registered access mode of Online, and PauseState="" indicates that the current access state is Online.
  • For the Test Repository: Access="OMS_READONLY" indicates a registered access mode of ReadOnly, and PauseState="READONLY" indicates that the current access state is ReadOnly.