Craig S. Mullins

Return to Home Page

February / March 2004





zData Perspectives
by Craig S. Mullins  


A Look at the Modes of DB2 V8

When it comes times to manage the migration of your DB2 subsystems to Version 8 you will need to understand the significant differences for V8 migration than for your previous DB2 migration strategies. The biggest difference is the introduction of three distinct modes that dictate how DB2 operates and the functionality that you will have available to you.

But before we discuss these three new DB2 modes, let’s quickly examine the basics of DB2 version migration. Typically, when you decide to begin using a new version of DB2 you will migrate your test subsystems to the new version. Over time and after testing, when you decide that everything looks fine, you “throw the switch” and migrate your production subsystems. When a subsystem is running on the new release (whether test or production) all the functionality of the new version is available to all DB2 users. Of course, for fallback purposes, many shops try to discourage the immediate use of new functionality, preferring to be sure the new release is stable. But prior to V8 there was no mechanism to support such a phased roll-in of new functionality. 

You will be able to exploit the three modes of DB2 to help manage how new functionality is used as you migrate to V8. The three modes are compatibility mode (CM), enabling new function mode (ENFM), and new functionality mode (NFM).

As you begin the migration process DB2 V8 will begin in compatibility mode. No new functionality is available at this stage. A DB2 V8 subsystem in compatibility mode is ideal for verifying functionality of existing applications and processes to ensure that they function as they did in Version 7. Once this verification is complete there is no real need to remain in compatibility mode any longer.

The next phase of the migration process moves DB2 V8 into enabling new function mode. Job DSNTIJNE is run to begin the process of enabling new functionality. At this stage conversion of critical subsystem components has begun, but as long as you remain in this mode, most new functionality is not available to users. Certain DB2 system catalog changes are made during this mode such as the movement of several (not all) table spaces to Unicode, the extension of many existing columns to support long names, and alteration of certain catalog indexes to be NOT PADDED (because VARCHAR is used for long name columns). Additionally, keep in mind that fallback to CM mode or to V7 is not permitted once you have entered ENFM mode.

You can remain in ENFM mode for as long as you need to complete the task. IBM supplies the DSNTIJNH job that can be run to halt the enabling new function job. In this way you can stage enabling new functionality over time. To pick up where you left off, simply run the DSNTIJNE job again and it will figure out where it was halted and start running again. This is a nice feature if you only have a limited window where you can make changes to the DB2 catalog because it permits phased implementation of the required changes.

The final stage of migrating to DB2 V8 is new functionality mode. Job DSNTIJNF is run to move into new function mode. When your subsystem is moved into this mode all of the new V8 functionality is available and you have successfully migrated to DB2 Version 8. In NF mode, all of the necessary DB2 system catalog changes are complete including the addition of new tables and columns, and any needed modification of existing columns. Additionally, several table spaces will have grown to be too large for 4K pages causing the DB2 catalog to require 8K, 16K, and 32K page sizes and buffer pools for the first time.

Also, keep in mind the following rules as you migrate to DB2 V8 and progress from CM mode to EN mode to NF mode:

  • You must be at DB2 V7 in order to migrate to DB2 V8 – there is no migration to V8 from any previous version or release of DB2.
  • You will need to apply the proper level of maintenance to DB2 V7, before migrating to V8, in order to be able to fallback to V7 from CM mode. If you have not applied the fallback SPE your DB2 V8 migration will fail and you will have to start over by first applying the fallback SPE to V7 and then proceeding with your migration.
  • Although you cannot fallback to V7 after you move to NFM mode you can fallback to ENFM mode if you so desire. This can be useful to curtail usage of V8 functionality if you suspect that it is causing problems.
  • The migration process will change any user-defined indexes that you have built on your DB2 catalog tables, but these indexes will not be changed to NOT PADDED. If these indexes contain any column that refers to a long name then your indexes will become very large until you alter them to be NOT PADDED.
  • Be sure to migrate any existing Type 1 indexes to Type 2. DB2 V8 will fail if any Type 1 indexes are found in the catalog.


The migration process for DB2 V8 is quite different than any previous DB2 release migration.  Be sure to study the DB2 manuals to understand all of the nuances of each mode before beginning the migration of your DB2 subsystems to V8.


From zJournal, February / March 2004.

2004 Craig S. Mullins,  All rights reserved.