It looks like an all DSNZPARM APAR Friday today. I have two APARs, both dealing with ZPARMs in one way or another, one is a HIPER, and both sound pretty interesting.

The first is today’s HIPER,
APAR PM70046. It appears that some customers are leaving opaque DSNZPARM keyword OPTIOWGT set to DISABLE, either by accident or intentionally or they are disabling OPTIOWGT via the DSN_PROFILE_TABLE. OPTIOWGT affects I/O weighting when the DB2 optimizer is trying to decide the best access path. If it’s disabled, DB2 is not going to give you its best access path.

This is one of those ZPARMs with no reason to specify anything other that ENABLE. When disabled, I/O cost are over weighted causing DB2 to choose a more CPU intensive access path. Since processor speeds have increased considerably over the years, that imbalance has become more exposed making the use of a fixed I/O cost estimation even less attractive.

APAR PM70046 enables OPTIOWGT regardless of what is specified in the DSN6SPRM macro. After applying this APAR this feature will always be on. This APAR will also prevent disabling OPTIOWGT when using the DSN_PROFILE_TABLE.

APAR PM70046 closed as a HIPER on November 1, 2012 and should be superseded by PTF UK83168. This is a fairly new fix and the PTF is not yet available.

BTW, OPTIOWGT, a keyword on the DSN6SPRM macro, was added via
APAR PK61277 back in August 2008. It’s default was changed from DISABLE to ENABLE by
APAR PK75643 in December 2008 so the lab has been wanting you to take advantage of this change for a while. OPTIOWGT is also deprecated in DB2 10 so you’ll be getting this change in a future release of DB2 regardless of whether you decide to enable it today. But go ahead and apply this APAR now to make the change.

The second APAR for today is
APAR PM71114 and applies to DB2 9 and DB2 10. It delivers the stored procedure SYSPROC.ADMIN_UPDATE_SYSPARM that updates some the the DSNZPARM keywords on macros DSN6SPRM, DSN6ARVP, DSN6LOGP, DSN6SYSP, DSN6FAC, and DSN6GRP. ADMIN_UPDATE_SYSPARM will change the keyword values, builds the subsystem parameter’s load module, and refreshes the in storage values using the DB2 command –SET SYSPARM. The stored procedure does require that all the keywords modified be updateable via the –SET SYSPARM command.

APAR PM71114 closed back on November 1, 2012 and has no special handling. This APAR is superseded by PTFs UK83171 for DB2 10 and UK83172 for DB2 9. This is another pretty new APAR so the PTFs may not be available yet.