VSAM PATH naming

After you define an alternate index cluster and build it with BLDINDEX, applications still need a stable catalog name that means “follow the alternate keys to reach the base records.” That name is the PATH. Naming the path is therefore a user-interface decision as much as a technical one: developers will embed it in COBOL SELECT statements, CICS FCT entries, scheduler metadata, and disaster recovery runbooks. A path name that is short, unique, and obviously not the base cluster name prevents half the midnight mistakes support teams see when someone DELETEs the wrong catalog entry after reading an ambiguous spreadsheet. This page explains how PATH relates to PATHENTRY, compares suffix conventions, and ties naming back to JCL and program configuration.

PATH as the published access name

Think of the base cluster as the warehouse and the AIX as a specialized index card drawer listing coat-check numbers. The PATH is the sign on the door that tells programs which drawer-and-warehouse combination to use together. End users of your API (other developers) should memorize the PATH name, not the internal AIX cluster string, unless your standards explicitly say otherwise. That division of labor mirrors how REST URLs stay stable while internal service names change: here, stability means fewer recompiles when you rebuild an AIX under a new volume strategy but keep the same PATH entry semantics.

DEFINE PATH operands you should read aloud

DEFINE PATH takes a NAME for the path object and a PATHENTRY referencing the AIX cluster. Typos in either operand create catalog entries that look fine until first OPEN, when VSAM cannot resolve the chain. Read PATHENTRY directly from LISTCAT of the AIX cluster, not from email. If your organization uses multiple alternate indexes on the same base cluster for different keys, each PATH needs a distinct NAME and a PATHENTRY pointing at the correct AIX cluster. Document the matrix: base cluster, key field, AIX cluster, PATH name, owning application.

text
1
2
3
DEFINE PATH (NAME(ACCT.CUST.MASTER.DEPT.PATH) - PATHENTRY(ACCT.CUST.MASTER.DEPT.AIX)) /* PATHENTRY must match the AIX cluster name you LISTCAT. */

Suffix and pattern table

PATH-related naming elements
ElementTypical patternBeginner note
PATH nameBASE.NAME + .PATH or .ALTKEY.PATHSignals catalog browsers that this entry is not the physical base cluster.
PATHENTRYNames the AIX cluster created earlierMust match LISTCAT spelling for the AIX cluster exactly.
JCL DSN in jobsOften the PATH name for alternate-key batchKeeps application configuration aligned with catalog linkage.

COBOL and JCL alignment

COBOL SELECT / ASSIGN

When a program uses an alternate index, the SELECT often references the PATH name so the runtime resolves keys through the correct catalog object. If developers accidentally point ASSIGN at the base cluster while the program issues START/READ expecting alternate-key behavior, file status codes and runtime errors reflect that mismatch. Naming clarity in meetings (“we open the DEPT path, not the master cluster”) prevents those configuration splits.

Batch DD statements

Batch jobs that load or reorganize alternate-index structures may reference base cluster, AIX cluster, and PATH names in different steps. Step names in JCL should echo catalog names only when helpful; more importantly, comments in the proc should list all three names whenever any one appears. Future you will not remember that step SORTDEPT depended on PATH ACCT.CUST.MASTER.DEPT.PATH unless it is written down.

CICS file definitions

CICS FILE entries map datasets used under transactions. Whether CICS uses the base cluster name or a PATH name depends on how file control is configured and whether alternate-key access is required online. When CICS names differ from batch names for the same logical data, incidents arise during parallel testing. Standardize cross-region: if online uses PATH X, document whether batch may still open the base cluster for sequential sweeps or must also use PATH X for consistency.

Catalog migration and rename considerations

EXPORT/IMPORT, IDCAMS ALTER, and catalog repair scenarios may touch PATH entries. Because PATH names are part of application configuration, renaming a PATH is often as expensive as renaming a production database connection string. Prefer getting the PATH name right the first time, and if a rename is unavoidable, treat it like an API version bump with coordinated code and JCL changes across systems.

Common pitfalls

  • Using generic PATH names across unrelated files: PATH001 is meaningless under pressure.
  • Skipping PATH when testing AIX: Developers sometimes prove the AIX cluster exists but never test OPEN against the PATH their programs will use.
  • Documentation lists only base cluster: On-call engineers cannot infer PATH names from thin air during Sev1 calls.

Practice exercises

  1. Create a four-column table for a fictional customer file: base cluster, AIX cluster, PATH name, PATHENTRY value.
  2. Explain which column your COBOL SELECT would reference for alternate-key reads at your site.
  3. Write a LISTCAT command you would run to verify the PATH entry after DEFINE PATH.
  4. Identify one operational risk if PATH and base cluster names differ only by a single easy-to-miss character (such as O versus 0).

Explain like I'm five

There are two doors into the same playroom. The front door has a big sign that says “Everyone uses this door for recess.” The side door has a sign that says “Teachers only—this door also goes to the playroom but you need the special coat hook map.” The PATH is the side door sign: it still leads to the playroom, but it tells the school which special map to read first. If both signs said the same words, kids would line up at the wrong door every single day.

Test your knowledge

Test Your Knowledge

1. Why do shops avoid making the PATH name identical to the base cluster name?

  • Because IBM forbids identical strings
  • Because unique catalog entries would collide and operators could not distinguish base versus path in listings
  • Because PATH must be eight characters
  • Because JCL cannot reference PATH

2. PATHENTRY in DEFINE PATH identifies what?

  • The master catalog
  • The alternate index cluster participating in the path
  • The CI size
  • The unit device

3. If COBOL SELECT assigns to a PATH name, what happens at open time?

  • The base cluster opens with alternate-key resolution configured by the catalog path definition
  • The program opens SYSOUT
  • VSAM ignores the PATH
  • ISPF rewrites the SELECT
Published
Read time12 min
AuthorMainframeMaster
Reviewed by MainframeMaster teamVerified: IBM VSAM PATH definition overviewSources: IBM z/OS DFSMS Access Method Services; VSAM alternate index documentationApplies to: z/OS VSAM paths over alternate indexes