19.06.2013 Views

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

invoked; <strong>for</strong> example, the loading of the package into the EDM pool, or work that is done via<br />

DBRMs in the plan that do not have a package.<br />

The locking in<strong>for</strong>mation at the package level is identical to the in<strong>for</strong>mation you have in today’s<br />

plan level accounting record.<br />

Note: In V8, package-related accounting in<strong>for</strong>mation is always stored in IFCID 239 and no<br />

longer stored as part of IFCID 3 (plan level accounting).<br />

Writing accounting records with KEEPDYNAMIC(YES)<br />

If the <strong>DB2</strong> DSNZPARM parameter CMTSTAT is set to INACTIVE (new default <strong>for</strong> <strong>DB2</strong> V8),<br />

<strong>DB2</strong> writes an accounting record when a transaction commits and the connection qualifies to<br />

become inactive. However, when using the KEEPDYNAMIC(YES) bind option, <strong>DB2</strong> cannot<br />

disconnect the connection from the thread (which happens when the connection becomes<br />

inactive), because the thread contains in<strong>for</strong>mation about locally cached statements.<br />

There<strong>for</strong>e DDF threads always have to remain active when using KEEPDYNAMIC(YES). As a<br />

consequence accounting records are not cut at transaction boundaries. Likewise, DDF does<br />

not reestablish WLM enclaves at transaction boundaries.<br />

Although KEEPDYNAMIC(YES) still prevents DDF threads from becoming inactive in <strong>DB2</strong><br />

V8, using KEEPDYNAMIC(YES) still allows <strong>DB2</strong> to cut accounting records at transaction<br />

boundaries. When a new request arrives from the client system over the connection (that is<br />

still active), a new enclave is created and a new accounting interval is started.<br />

At commit time, when <strong>DB2</strong> evaluates whether a DDF connection is eligible <strong>for</strong> inactivation, if<br />

the only reason why it cannot become inactive is the presence of cached dynamic SQL<br />

statements due to KEEPDYNAMIC(YES), DDF still cuts an accounting record, and also<br />

completes the WLM enclave (as if KEEPDYNAMYIC(YES) were not specified). As in V7, the<br />

presence of held cursors or declared temporary tables keeps the thread active and does not<br />

allow accounting intervals or WLM enclaves to complete.<br />

With this new behavior, you may now consider period-based WLM goals <strong>for</strong> threads that<br />

commit frequently, but cannot become inactive only because they use KEEPDYNAMIC(YES).<br />

Threads that cannot become inactive <strong>for</strong> other reasons do not reset the WLM enclave, and<br />

period-based goals are probably not right <strong>for</strong> them (which was the case in the past).<br />

4.12.5 SQLCODE -905 new IFCID 173<br />

The current method of monitoring dynamic SQL statements that exceeded the resource limit<br />

facility (RLF) ASUTIME time limit is inadequate. It does not provide the DBA with in<strong>for</strong>mation<br />

at the system level.<br />

Description<br />

Currently <strong>DB2</strong> issues an SQLCODE -905 <strong>for</strong> the dynamic SQL statement which exceeds the<br />

ASUTIME time limit set by the DBA. This is inadequate <strong>for</strong> the DBA to identify and act on it if<br />

this is a recurring problem.<br />

A new IFCID 173 trace record is written whenever a SQLCODE -905 is issued. For a<br />

distributed system, IFCID 173 is issued at the site that the -905 error is issued except <strong>for</strong> a<br />

statement that references a remote table with a three part name, then the IFCID 173 can be<br />

issued at both the server and the requester.<br />

This new IFCID 173 trace record is contained in trace type STAT CLASS(4) and PERFM<br />

CLASS(3).<br />

Chapter 4. <strong>DB2</strong> subsystem per<strong>for</strong>mance 209

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!