A fix is available
APAR status
Closed as program error.
Error description
Poor performance from XPath expression with parent axis. (PK56337 is the pre-conditioning apar for PK66539).
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: DB2 R910 Users who use XMLQuery/XMLTable/ * * XMLExists with multiple parent-axis steps * * (e.g., ../..) * **************************************************************** * PROBLEM DESCRIPTION: PRECONDITIONING APAR to improve the * * performance of XMLQuery/XMLTable/ * * XMLExists (especially XMLTable) with * * multiple parent-axis steps (e.g., * * ../..) in terms of CPU time and * * storage usage. * **************************************************************** * RECOMMENDATION: * **************************************************************** The performance of XMLQuery/XMLTable/XMLExists (especially XMLTable) with multiple parent-axis steps (e.g., ../..) needs to be enhanced to avoid multiple scans and extensive usage of storage. PK56337 and PK66539 help to achieve that. PK56337 is the preconditioning APAR. For example: The following query uses parent-axis in column definitions of an XMLTable. SELECT X.* FROM ADMF001.STATE_XML, XMLTABLE('/doc/state/college/students/student/classes /class' PASSING STATE_COLLEGE COLUMNS "STATEID" INTEGER path '../../../../../@stateid', "COLLEGEID" BIGINT path '../../../../@id', "TEACHERID" INTEGER path '@teacherid', "STUDENTID" INTEGER path '../../@studentid', "COURSEID" SMALLINT path '@courseid', "GRADE" DECIMAL path '@grade', "SEMESTER" DATE path '@semester' ) AS X; In this query, there are multiple parent-axis steps in some column definitions. The query execution is both time and space consuming because it requires to perform multiple get-parent scans to retrieve the ancestor node and needs to do this repeatedly for all the rows in XMLTable.
Problem conclusion
PK56337 is the preconditioning APAR and PK66539 is the enabling APAR for improving the performance of XMLQuery/XMLTable/ XMLExists (especially XMLTable) with multiple parent-axis steps (e.g., ../..). They employ an ancestor node cache and support finding ancestor node in one scan. PK56337 should be applied before PK66539.
Temporary fix
Comments
APAR Information
APAR number
PK56337
Reported component name
DB2 OS/390 & Z/
Reported component ID
5740XYR00
Reported release
910
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2007-11-09
Closed date
2008-07-23
Last modified date
2008-09-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK38379
Modules/Macros
DSNDSXT DSNNCTIB DSNNOCCN DSNNOGET DSNNOINS DSNNORSQ DSNNOSMS DSNNOTTS DSNNQOP DSNNQSCN DSNNQXCA DSNXMLSM
Fix information
Fixed component name
DB2 OS/390 & Z/
Fixed component ID
5740XYR00
Applicable component levels
R910 PSY UK38379
UP08/08/15 P F808
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
02 September 2008