Skip to content

MPE_DATACATALOG_LIBS

The MPE_DATACATALOG_LIBS table catalogs library attributes such as engine, paths, permissions, owners & schemas.

More frequently changing attributes (such as size and number of tables) are stored in MPE_DATASTATUS_LIBS.

To ignore additional librefs, or to trigger a scan, see the Refresh Data Catalog instructions.

Columns

  • TX_FROM num: SCD2 open datetime
  • 🔑 TX_TO num: SCD2 close datetime
  • 🔑 LIBREF char(8): SAS Libref (8 chars)
  • ENGINE char(32): The engine used to connect to the library
  • LIBNAME char(256): The Library Name (from metadata if SAS 9)
  • PATHS char(8192): The directories used (BASE engine only)
  • PERMS char(500): The directory permissions (BASE engine only)
  • OWNERS char(500): The directory owners (BASE engine only)
  • SCHEMAS char(500): The library schema (DB engines)
  • LIBID char(17): The Library Id (from metadata if SAS 9)

Refresh Process

The table is refreshed by the mpe_refreshlibs macro, which runs:

  • When a user clicks the refresh icon next to a library in the VIEW menu (via the refreshlibinfo service)
  • For ALL libraries when an administrator clicks REFRESH on the System page (via the refreshlibs service)

The refresh is driven primarily from dictionary.libnames, augmented with library name / id from metadata (SAS 9 only). Noteworthy behaviours:

  • The V9 engine is normalised to BASE
  • Concatenated libraries produce multiple quoted entries in PATHS, with one comma-separated PERMS / OWNERS value per path
  • SCHEMAS is populated for database engines
  • On SAS 9 (metadata) deployments, invalid libraries are validated by attempting a META libname assignment and skipped on failure. If your environment has invalid libraries that cause exception errors, set the DC_VIEWLIB_CHECK config variable to NO in Data Controller Settings
  • The following librefs are always excluded: SASWORK, WORK, SASUSER, CASUSER, TEMP, STPSAMP, MAPSGFK. Additional librefs can be ignored via DC_IGNORELIBS (see Refreshing the Data Catalog)

The load is TXTEMPORAL on the LIBREF key, so records are closed out (not deleted) when a library disappears.