Activating Db2 13 function levels

You control the activation and adoption of new features in Db2 13 by activating function levels and specifying the application compatibility level. You can also continue to apply corrective and preventative service without adopting new feature function.

Before you begin

Ensure that no incompatible applications will interfere with the catalog update. For details, see Identifying applications that are incompatible with catalog updates.

Determine the function level to activate. In most cases, you can activate a higher function level without separately activating each lower function level above the currently activated function level. However, activating a higher function level also results in the activation of all lower function levels. Before activating a function level, familiarize yourself with the new capabilities and changes that all lower function levels introduce:

About this task

The ACTIVATE command controls the activation of new function in Db2. You can tailor jobs for updating the Db2 catalog and activating Db2 function levels by running the Db2 installation CLIST.

Tip: You can also use z/OSMF to automate running the jobs for this task. For more information, see Activating Db2 function levels by using z/OSMF.

Procedure

To activate capabilities and enhancements that are introduced by Db2 function levels, complete the following steps:

  1. If Db2 13 is at function level 100 or 500, follow the steps in Activating Db2 13 function level 500 or higher.
  2. Issue a DISPLAY GROUP command to check that the code level of the Db2 subsystem or each data sharing group member supports your target function level.
    In the DSN7100I message, the DB2 LVL column indicates the code level. For more information and examples, see Determining the Db2 code level, catalog level, and function level.
  3. If necessary, apply maintenance, such as PTFs and RSUs, to bring your Db2 subsystem or data sharing group members up to the required code level for your target function level.
  4. Generate tailored JCL jobs for the CATMAINT and function level activation steps. You can use the DSNTIJBC batch job or the Db2 installation CLIST.
    Tip: Start of change You can avoid working through the Db2 installation CLIST panels in interactive mode by running a batch job with valid input files to generate the required JCL jobs and input files with a background process. See Generating tailored Db2 migration or function level activation jobs in the background.End of change
    To generate the required JCL jobs and input files with a background process, complete the following steps:
    1. Customize the DSNTIDOA parameter override file by following that instructions in the file.
    2. Customize the DSNTIJBC job. For example, if prefix.SDSNSAMP(DSNTIDOA) is the customized parameter override file, you can specify the following values in the IPSTART command in DSNTIJBC.
        ISPSTART CMD(%DSNTINSB + 
          OVERPARM(prefix.SDSNSAMP(DSNTIDOA)) + 
          ) BREDIMAX(1)
    3. If you use Db2 Value Unit Edition, you must also provide the data set name of the DSNTIDVU parameter override file in the IPSTART command in the DSNTIJBC job, as shown in the following example, where prefix.SDSNSAMP(DSNTIDVU) is the customized OTC LICENSE file.
        ISPSTART CMD(%DSNTINSB + 
          OVERPARM(<prefix>.SDSNSAMP(DSNTIDOA)) + 
          OTCLPARM(<prefix>.SDSNSAMP(DSNTIDVU)) + 
          ) BREDIMAX(1)
    4. Submit the customized DSNTIJBC job.
    To generate the required JCL jobs and input files with the Db2 installation CLIST in interactive mode, complete the following steps:
    1. On panel DSNTIPA1, specify values in the ACTIVATE, INPUT MEMBER, and OUTPUT MEMBER fields.
      • In the INSTALL TYPE field, specify ACTIVATE.
      • In the INPUT MEMBER field, specify the name of the CLIST output member that you created when you installed or migrated to Db2 13, or most recently activated a Db2 13 function level.
      • In the OUTPUT MEMBER field, specify a new member name, to save your changes for future use.
    2. On panel DSNTIPT, verify the SAMPLE LIBRARY field value, which is the name of the output data set that is to be created. An asterisk appears at the far left of this field if the data set already exists. If the data set already exists, the CLIST replaces the members that it customizes for activation of the new function level.
    3. On panel DSNTIP00, specify V13R1M5nn in the TARGET FUNCTION LEVEL field, where 5nn is the function level that you want to activate. The format is VvvRrMmmm, where vv is the version, r is the release, and mmm is the modification level. The value is used in the ACTIVATE command in the DSNTIJAF job and in the CATMAINT utility control statement in the DSNTIJTC job.
    4. If all Db2 applications can be bound and run at the target function level, modify the APPLCOMPAT and SQLLEVEL subsystem parameter settings. Otherwise, leave these fields unchanged.
    5. Proceed through the remaining panels, and wait for the CLIST to tailor the jobs for the activation process. The output data set contains the tailored jobs for the activation process.
  5. Run the DSNTIJIC job to take an image copy of the Db2 catalog and directory.
  6. Run the tailored DSNTIJTC job to run the CATMAINT utility with LEVEL V13R1M5nn to update the catalog to the appropriate catalog level.
    You can use a single CATMAINT job that specifies the target function level. If the target function level requires multiple catalog level updates, the CATMAINT job processes each update in sequential order. If a later update in the sequence fails, the previous successful updates do not roll back, and the catalog level remains at the highest level reached. If that occurs, you can correct the reason for the failure and resubmit the same CATMAINT job.
    Important: Do not attempt to start Db2 at a lower code level after any part of the CATMAINT job for a higher function level completes. Run the CATMAINT job only after you are satisfied that Db2 can continue to run at the necessary code level. The code to tolerate catalog changes is contained in the code level that delivers the CATMAINT job.

    When the catalog level change completes, Db2 records the change in the SYSIBM.SYSLEVELUDPATES catalog table and issues message DSNG014I to the console.

  7. If the CATMAINT utility placed any altered Db2 catalog objects in REORG-pending (AREO*) advisory status, run the REORG utility for those objects.
  8. Optional: Test the Db2 code level and catalog level for readiness to activate of the function level.
    For more information and examples, see Testing Db2 function level activation.
  9. Run the tailored DSNTIJAF job, or issue the following ACTIVATE command, with V13R1M5nn changed to function level that you want to activate.
    -ACTIVATE FUNCTION LEVEL (V13R1M5nn)
    Important: Do not attempt to start Db2 at any code level that is lower than the highest ever activated function level, even at the lower star (*) function level. Activate a function level only after you are satisfied that Db2 can continue to run at the required code level.
    If the command completes successfully, Db2 issues message DSN9022I. Message DSNU757I indicates the result of the activate command.
    Begin general-use programming interface information.For example, the following message indicates successful activation:
    DSNU757I  -DB2A DSNUGCCA                                                   
    *** BEGIN ACTIVATE FUNCTION LEVEL (V13R1M500)                              
                    FUNCTION LEVEL (V13R1M500) SUCCESSFULLY ACTIVATED          
                    CATALOG LEVEL(V13R1M100)                                   
                    CURRENT FUNCTION LEVEL(V13R1M500)                          
                    HIGHEST ACTIVATED FUNCTION LEVEL (V13R1M100)                
                    HIGHEST POSSIBLE FUNCTION LEVEL(V13R1M500)               
    DSN9022I  -DB2A DSNZACMD '-ACTIVATE FUNC' NORMAL COMPLETION

    When the function level change completes, Db2 records the change in the SYSIBM.SYSLEVELUDPATES catalog table and issues message DSNG014I to the console.

    End general-use programming interface information.
    More actions are required after the ACTIVATE command completes successfully before most types of new capabilities and enhancements in the function level can be used. For example, new SQL capabilities require that applications use the appropriate application compatibility level, and optimization enhancements apply only after full prepare of the SQL statements.
  10. After you are ready for applications to use the new capabilities in the function level, rebind them at the corresponding application compatibility level. For more information, see Controlling the Db2 application compatibility level.
    Tip: Proceed with the following steps only if all Db2 applications can be bound and run at the target function level.
    Optionally, when you are ready for all applications to use the new capabilities of the target function level, you can run the following jobs:
    1. Run DSNTIJUZ to modify the subsystem parameter module with the APPLCOMPAT value that was specified on panel DSNTIP00.
    2. Run DSNTIJOZ job to issue SET SYSPARM command to bring the APPLCOMPAT subsystem parameter changes online.
    3. Run DSNTIJUA job to modify the Db2 data-only application defaults module with the SQLLEVEL value that was specified on panel DSNTIP00.

What to do next

Complete any of the following actions:

  • If the new function level includes optimization enhancements, Db2 must process a full prepare before any SQL statements can benefit. Whether a full prepare occurs depends on the statement type:
    • For static SQL statements, after bind or rebind of the package.
    • For non-stabilized dynamic SQL statements, immediately, unless the statement is in the dynamic statement cache.
    • For stabilized dynamic SQL statements, after invalidation, free, or changed application compatibility level.
  • If you did not run the jobs to update the APPLCOMPAT and SQLLEVEL subsystem parameters, resolve any application incompatibilities and increase the application compatibility level of your applications after you are satisfied that Db2 is stable at the target function level, as described in Controlling the Db2 application compatibility level.
  • If you encounter regressions or other problems when you activate a Db2 13 function level, minimize the impact to your applications while you resolve the problems by following the general approaches described in Responding to problems after function level activation.
  • You might need to update COPY, RECOVER, and REBUILD INDEX utility jobs to add new or remove obsolete Db2 catalog objects. When a utility encounters the following situations for Db2 catalog objects, it issues message DSNU1530I:
    • The object is no longer used or no longer exists.
    • The object is created in a higher catalog level or function level.

    For best results, make these updates the utility jobs after you activate the function level that the changes support. For more information about the catalog changes in Db2 13, see Catalog changes in Db2 13.