Sign in

docs ILE Concepts

Converting Your Program or Service Program to Inherit a Storage Model

Converting Your Program or Service Program to Inherit a Storage Model

By converting your programs or service programs to inherit a storage model (specifying *INHERIT on the STGMDL parameter), you enable them for use in either teraspace or single-level storage environments. Make sure that your code anticipates and effectively manages pointers to and from teraspace and single-level storage. See Using Teraspace: Best Practices for more information.

There are two ways to enable your existing programs or service programs for the teraspace storage model: you can re-create them, or in some circumstances, you can change the storage model of existing programs. When creating a program, first create all of your modules with the *INHERIT storage model. Then create your ILE program or service program with the *INHERIT storage model.

Alternatively, you can change the storage model of an existing program or service program from single-level storage (*SNGLVL) to *INHERIT, using the CHGPGM or CHGSRVPGM command, if the following are true:

  1. The object is an ILE program or service program.
  2. The object uses single-level storage model.
  3. The object uses the activation group of its caller.
  4. The object is a program whose target release is V6R1M0 or later.
  5. The object is a service program whose target release is V5R1M0 or later.
  6. All bound modules of the object have a target release of V5R1M0 or later.