DB2 - what is NF (New Functionality) mode?

MikeD picture MikeD · Dec 15, 2008 · Viewed 9.2k times · Source

I have some questions about customers about NF mode for DB2. Google had very little information about it.

I've been able to infer the following but I don't completely trust it...

  1. NF and CM (compatibility mode) are settings on DB2 v8 on mainframe.
  2. DB2 v8 on z/OS in CM is designed to allow DB2 v8 to be used as a drop in replacement for DB2 v7.
  3. NF makes numerous changes that break backward compatibility.
  4. In particular the "data dictionary" system tables are completely reworked.

I suspect the following, but I'm even less sure of it...

  1. The reworked data dictionary and system tables are similar to those used by DB2 v8 on Linux/Unix/Windows.
  2. DB2 v8 NF is largely compatible with DB2 v9.
  3. DB2 v9 is much more consistent across platforms (Linux/Unix/Windows and mainframe).
  4. Code written to work with DB2 v8 NF will generally work properly with DB2 v8 on LUW and DB2 v9 anywhere.

Can anyone tell me if I am right? Or add more detail?

Answer

paxdiablo picture paxdiablo · Dec 16, 2008

These functional modes are basically just ways to do your planned upgrades. Both DB2/z v8 and v9 (and probably all the ones to come) have three modes:

  • compatibility (CM).
  • enable new function (ENFM).
  • new function (NFM).

It's used to ensure there's a smooth transition between versions. For example, all DBMS' in a group must be upgraded to v8 CM before any of them can be switched to v8 ENFM.

Compatibility mode for vX means you're using vX but with none of the new function (in other words, equivalent to v(X-1). If you're running v7 at the moment, you're unsupported - you should really be running v8 in CM (if you care about support and, believe me, if you're paying IBM those huge license fees, you should care :-).

Enable new function mode is when the database system tables have been updated to use new function but not user tables.

New function mode means that new functionality has been enabled for both system and user tables.

The actual content of the new function depends on the version.

See here for the v8 What's New information. Basically chapter 2 lists all the new functionality:

  • More SQL goodies.
  • More security.
  • Better compatibility with DB2/z's smaller siblings (LUW), including Unicode.
  • Scalability/Performance.
  • Availability (very important in the mainframe world).

By the way, IBM makes all its documentation available on the web for perusal, the top level of the public libraries being found here.