Skip to main content

TPF : Support : Maintenance TPF : Support : Maintenance

Skip to: Abstract | Comments | Solution | Migration | Download

APAR NUMBER:  PJ31135                          
PRODUCT:  TPF4 
FUNCTIONAL AREA:  CONTINUOUS DATA COLLECTION (CDC) 
SHIPPED IN PUT:  20 
  

ABSTRACT: 
With Continuous Data Collection (CDC) running, negative values for tape 
information could be generated. 
  
APAR CONTENTS: 
FEATURE   TYPE                STATUS    NAME                               
Base      C                   Changed   source/rt/base/cdcp.c 
  
PREREQUISITE APARS:  To be applied in order listed. 
Base      C                   Changed   source/rt/base/cdcp.c 
 PJ27095(12)  PJ27775(15)  PJ28097(15)  PJ29925(19)  PJ30137(19)  
 PJ30215(20)  PJ30233(20)  PJ30253(20)  PJ30251(20)  PJ30465(20)  
 PJ30503(20)  PJ30701(20)  PJ30589(20)  PJ30610(20)  PJ30946(20)  
 PJ31004(20)  
  

COMMENTS: 
There are occasions when CDC is running where negative values for tape 
"writes" and "bytes written" are generated. These negative values have 
been observed when querying the CDC DB2 database for tape information 
for a time span during which a tape switch occurred. 
  

SOLUTION: 
The TPF Tape Status Table (TSTB) contains entry for all tapes 
configured on a system. Each entry in that table has an unsigned 4 byte 
field (CPMTC0) representing the number of bytes written to that entry. 
It also contains an unsigned 2 byte field (CPMTC1) representing the 
number of writes to the tape. These fields are assigned on a tape mod 
basis and do not get reset when a tape is swapped (i.e. these counts 
belong to a tape name, not the tape name AND device number).  
  
In order to maintain correct counts, CDC will make sure that each tape 
entry it collects will have the same tape name and device number for at 
least two intervals before adding the tape to the collection and 
storing its information. Also, the collector was treating CPMTC1 field 
(an unsigned short) as an unsigned integer when trying to account for 
counter roll-over. This has been corrected and field is now treated as 
an unsigned short during these calculations.  
  
It is necessary to point out that all the of the numbers in the CDC 
collector are unsigned. If a customer is using DB2, it does not have 
unsigned data type support. This entails that in DB2, any number higher 
than 2^31 will be represented as a negative value. That does not mean 
that the number is incorrect, DB2 just stores it as such. The correct 
representation of the value will be handled at the presentation layer 
(i.e. the CDC client). If a customer has any reporting applications 
that runs off of this data, it should be accounted for in their 
application as well. 
  
  

DEPENDENCIES 
  
SEGMENTS TO BE ASSEMBLED OR COMPILED: 
None. 
  
SEGMENTS TO BE LINK EDITED: 
cdcp40.exe (Shipped in Tar File) 
  
COREQS: 
None. 
  

MIGRATION CONSIDERATIONS: 
None. 
  
UPDATED INFORMATION UNITS: 
None. 
  
See your IBM representative if you need additional information. 
  

DOWNLOAD INSTRUCTIONS: 
http://www.ibm.com/software/htp/tpf/pages/maint.htm
  
-- END APAR PJ31135 
       



Download file(s): Login once to access server, leave window open, then click on link(s) below. Listing Binary Source