Changed functionality in Db2 12.1

Changed functionality typically involves changes in default values or an outcome different from what would have occurred in previous releases. For example, an SQL statement used in a previous release might produce different results in Db2 12.1.

Maintaining application compatibility across releases is a key priority. However, some behavior has to change to take advantage of new functionality in the current release.

The following table lists changed functionality in Db2 12.1:

Changed registry and environment variables

Table 1. Changed registry and environment variables in Db2 12.1
Affected command or database object Changed behavior
Ability to set crash recovery to fail on a table space container error.

By default, any table space container error that happens during a crash recovery is ignored and the operation continues on the remaining set of table spaces. The registry variable DB2_FAIL_RECOVERY_ON_TABLESPACE_ERROR now provides crash recovery support that can be set to cause the crash recovery operation to fail on any table space container error.

Switch for turning off automatic DMS and AS verification for backup operations now set to ON by default. Database managed space (DMS) and automatic storage (AS) verification can identify many types of structural integrity problems when running a backup operation. While this feature is active by default, the DB2_BCKP_PAGE_VERIFICATION registry variable was created to give users the ability to turn this feature off. With the release of Db2 12.1, the default value has changed from OFF to ON.
Page cleaning algorithm From Db2 12.1, the alternate page cleaning algorithm (introduced in Db2 version 8.2) is now the default algorithm. Database functions such as DB2_USE_ALTERNATE_PAGE_CLEANING is set to ON. Before Db2 12.1, this behavior was already implicitly enabled by the engine in configurations such as pureScale and CDE or strongly recommended in the non-pureScale OLTP configuration. The previous behavior can be obtained by setting DB2_USE_ALTERNATE_PAGE_CLEANING to OFF. For more information, see Proactive page cleaning.

Changed data structures

Table 2. Changed data structures in Db2 12.1
Data structure Changed behavior
Changes to the backup and load copy media header, SQLUV_BMH.
The following offsets have been removed:
  • valRawDevHeadExt
  • rawDevHeadExt
These offsets have been replaced with the following fields:
  • imageVersion
  • minCompatImageVersion
Also, the field alVersion has been renamed to productVersion. The values assigned to this field have not changed.

For more information on each of these new fields, see BACKUP and LOAD COPY images.

Changed database configuration parameters and driver properties

Table 3. Changed database configuration parameters and driver properties in Db2 12.1
Affected command or database object Changed behavior
Change in connection behavior for remote clients connecting to IBM® Db2 pureScale® servers while the target database is activating. In previous versions of Db2, if a remote connection to a Db2 pureScale member arrived while the database was activating, the connection attempt would pause until the database was activated and then resume.
With the release of Db2 12.1, any connection attempt from a remote client that arrives while the database is activating is rejected. Rejected connection attempts from remote clients produce an SQL1224N error. If the remote client has an alternate server list configured in the db2dsdriver.cfg file, then the rejected connection request is rerouted to the new member based on alternate server list.
Note: The exception to this change is when the remote connection attempt is the first connection of the current member. In these situations, the connection attempt proceeds as part of the work of database activation.

Changed security functionality

Table 4. Changed security functionality
Affected command or database object Changed behavior
Changed communications security with TLS Encrypted communication with Transport Layer Security (TLS) is changed in the following areas:
Hostname validation
Hostname validation is enabled by default. Server certificates might need to be recreated, according to Configuring Db2 instances for hostname validation.
Strict signature algorithms in STRICT_FIPS mode
When Db2 12.1 is in STRICT_FIPS mode, all certificates must have a signature algorithm stronger than SHA1.
Extended Master Secret
All Db2 12.1 clients and servers advertise the Extended Master Secret (EMS) when using TLS 1.2. Other peers are required to support EMS when communicating to Db2 clients and servers in STRICT_FIPS mode.
Cipherspecs using RSA Key Exchange
When using TLS 1.2 in FIPS compatibility mode, cipherspecs using RSA key exchange are not allowed.
TLS 1.3 ChaCha20+Poly1305 cipher and x25519/x448 key exchange groups
The Cha20+Poly1305 cipher and x25519/x448 key exchange groups are in the SSL_CIPHERSPECS DBM cfg supported in NOFIPS and FIPS compatibility mode. These ciphers are not allowed in STRICT_FIPS mode.
Internal encryption library The encryption library used by Db2 on 32-bit platforms and MacOS is no longer FIPS certified.

Changed system catalog views, built-in functions and global variables, built-in administrative routines and views

Table 5. Changed system catalog views, built-in functions and global variables, built-in administrative routines and views in Db2 12.1
Affected command or database object Changed behavior
Number of processed units of work (UOW) allowed before an offline REORG now increased. The number of UOWs that can be processed before an offline REORG TABLE operation is required is increased from 3 to 31. This increase applies to UOWs that contain reorg-recommended operations.
New columns GRANT_TIME and GRANTREVOKE_TIME added to all authorization system catalog views. Timestamps are now added to authorization system catalog views to record the first grant time and last grant or revoke time.

Changed scalar functions

Table 6. Changed scalar functions in Db2 12.1
Affected command or database object Changed behavior Resolution
Semantic change in the concatenation operator The concatenation operator no longer returns a result type of LONG VARCHAR or LONG VARGRAPHIC unless one or more operands is LONG. This might adversely affect an application when a concatenation result is small enough for LONG VARCHAR (32,700 bytes) or LONG VARGRAPHIC (16,350 double-byte characters), but too large for VARCHAR (32,672 bytes) or VARGRAPHIC (16,336 double-byte characters). As a result, an error message of SQLCODE -137 is now returned, where in previous releases of Db2, there was no error. To handle concatenation results greater than the maximum VARCHAR or VARGRAPHIC, cast one of the operands to CLOB or DBCLOB.

Changed Db2 authorities

Table 7. Changed authorities in Db2 12.1
Authority Changed behavior
DBADM no longer grants DATAACCESS and ACCESSCTRL by default When granting DBADM, the DATAACCESS and ACCESSCTRL authorities are no longer granted by default. These privileges can still be granted explicitly using the "WITH/WITHOUT DATAACCESS/ACCESSCTRL" clause. The registry variable DB2_ALTERNATE_AUTHZ_BEHAVIOUR can be set to DBADM_ADDTL_AUTHS to revert this behavior.
CONNECT, CREATETAB, IMPLICIT_SCHEMA, BINDADD on database, CREATEIN on NULLID and SQLJ schemas, and USE on table space USERSPACE1 are no longer granted to PUBLIC When creating a database, these authorities are no longer granted to PUBLIC. These can still be granted explicitly to users/groups. Alternatively, the registry variable DB2_ALTERNATE_AUTHZ_BEHAVIOUR can be set to PUBLIC_DBCREATE before creating the database to revert this behavior.
DBADM can manage automatic storage table spaces and buffer pools. In v12.1, user with DBADM authority can CREATE/ALTER/RENAME/DROP table spaces if they are managed by automatic storage. User with DBADM can CREATE/ALTER/DROP buffer pools.

Database setup and product installation changes

Table 8. Setup and installation changes in Db2 12.1:
Change Details
db2ckupgrade now checks instance level settings When running db2ckupgrade without providing a database name, db2ckupgrade now checks instance-level configuration settings for discontinued values. In addition, there is also an option to run only instance-level checks by providing -instOnly in the command invocation. For more information, see db2ckupgrade - Check database for upgrade command.
GDPC is not currently supported on Linux The geographically dispersed pureScale cluster (GDPC) configuration is not currently supported on Linux. This configuration allows you to distribute the members of a Db2 pureScale cluster across different sites.
Table 9. Changed Db2 log records
Change Details
Topology change log record is changed. For more details, see Transaction manager log records.

Changed backup and restore features

Table 10. Changed backup and restore features
Change Details
Changes to LIST HISTORY, DB_HISTORY and db2HistoryData data structure. Five new fields are added to the history file entry: The LIST HISTORY command, DB_HISTORY administrative view and db2HistoryData data structures now accommodate these new fields. In addition, the maximum size of the COMMENT field is increased from 30 characters to 254 characters.

Changed backup and restore performance statistics

An existing field has been enhanced and new fields have been added to improve the performance monitoring information returned for Db2 backup and restore operations. See Example output for backup performance monitoring and Example output for restore performance monitoring for a detailed breakdown of the fields and values that are displayed in the monitoring information for each operation.

Table 11. Changed backup and restore performance statistics
Change Details
New columns added to Backup performance monitoring. The following parameters have been added for collecting backup and restore performance statistics:
  • Throttle: The amount of time that this EDU paused due to utility throttling.
  • LogPhase: The amount of time that this EDU spent processing recovery logs.
  • LogBytes: The quantity of recovery log data processed by this EDU.
New time display format for backup and restore performance monitoring. The time format displayed by backup and restore performance monitoring tools is expanded from displaying only seconds to HH:MM:SS format.