You keep hearing about this and that trace that you should be running: statistics class 1,3,4,5, and 6, accounting class 1,2,3,7,8, audit, performance, etc… Even in this blog, every few months I discuss some trace that you should consider starting or expanding……
Then there are those trace intervals; the recommendations keep suggesting shorter and shorter intervals. Even here, on a couple of occasions, you’ve seen recommendations to decrease your trace interval for better granularity. It is always better to use a shorter statistics interval. Fortunately, you no longer have to take my word for it. DB2 for z/OS has slowly come around to the same recommendations. Sure, way back in DB2 Version 7, the stats interval default (specified by the STATIME keyword on the DSN6SYSP macro) was set way up to 30 minutes. However, in DB2 Version 8 that default interval was dropped to 5 minutes. Now, in DB2 10, the interval has been dropped once again to 1 (one) minute. In fact, the STATIME DB2 subsystem parameter no longer applies to stats IFCIDs 0001, 0002, 0202, 0217, 0225, and 0230. Those particular IFCIDs are ALWAYS written at a fixed one minute time interval.
All of this when first read may cause you some concern. Right now you might be thinking “How am I going to explain this to my Systems Programmer”. The last thing you want to do is have DB2 responsible for filling the SMF MAN data sets in the middle of afternoon, during peak business hours.
If SMF space is (or has been) a concern to you (or your company), DB2 10 may have a solution that will make everyone happy; a mechanism to reduce the amount of SMF data recorded.
Actually, that previous statement isn’t totally accurate. We’re not going to reduce the amount of SMF data recorded. However, what we are going to do is enable SMF compression.
A new DSNZPARM parameter is being introduced in DB2 10:
SMFCOMP on the subsystem parameter macro DSN6SYSP
Default value is OFF
Acceptable values are OFF, ON
It’s line 14, “COMPRESS SMF RECS”, on installation panel DSNTIPN
If SMFCOMP is set ON, trace records written to SMF are compressed. Compression is performed by the z/OS compression service CSRCESRV . If you take a look at the SMF 100, 101, or 102 records, everything after the SMF header i compressed. There are indicators in the SMF record that indicates the record has been compressed and what the size of the record was before compression.
While we’re discussing tracing in DB2, it’s seems like an appropriate time to mention a few other changes that could affect your DB2 trace experience.
DB2 10 will give you a little more information to help solve some of those wait time issues. An accounting class 3 trace will now identify both DB2 latches and DB2 transactional locks. There’s a new IFCID 0359 to record index splits. IFCIDs 0400 and 0401 have been added to reports details about static SQL from the EDM pool similar to the statistics you get from IFCID 0316 and 0318. What’s really nice is that IFCIDs 316, 318, 400, and 401 are all wrapped into Monitor Class 29 making it so much easier to fire them up when you have to do some SQL analysis. IFCID 0357 and 0358 have been added to give information about index parallelism. IFCID 0225 now contains storage information about the DIST address space. And the list goes on and on. If you’re into IFCIDs, make sure you give the DB2 10 What’s New manual a good read over…
Along with reducing that stats interval to 1 (one) minute, a whole bunch of IFCIDs (too many to list here) have had counters either increased from 4 bytes to 8 bytes or had 4 byte counters removed and replace by 8 byte counters. This will add to an increase in your over all SMF recording. For example, with all the changes made to IFCID 0002, including double the size of some of its counters and increasing the number times some blocks can be repeated, its overall SMF record size could exceed 32 KB.
Enabling SMFCOMP should make you (and your Systems person) feel a little more comfortable about the new 1 (one) minute statistics interval change and some of the other IFCID changes/additions/enhancements that are happening in DB2 10 for z/OS