IBM®
Skip to main content
    United States [change]      Terms of use
 
 
   
     Home      Products      Services & solutions      Support & downloads      My account     
     
  TPF : Support : Maintenance : TPFDF
SUBJECT:         APAR  NUMBER: PQ60572
 
REFERENCE:  AREA:     TPFDF CENTRAL DATABASE ROUTINES
            SEGMENT:  DB13513    - RELEASE:  TPFDF (Macro)
            SEGMENT:  IW06DF13   - RELEASE:  TPFDF (Macro)
            SEGMENT:  TPFDB13    - RELEASE:  TPFDF (Macro)
            SEGMENT:  UWAP13     - RELEASE:  TPFDF (Assembler)
            SEGMENT:  UWAR13     - RELEASE:  TPFDF (Assembler)
            SEGMENT:  UWBG13     - RELEASE:  TPFDF (Assembler)
 
 
Pre-requisite APARs are (TPF only) :
FOR SEGMENT DB13513    (Macro)     - REL TPFDF
 PQ07680  PQ32210  PQ60326  
FOR SEGMENT IW06DF13   (Macro)     - REL TPFDF
 PQ32210  
FOR SEGMENT TPFDB13    (Macro)     - REL TPFDF
      PN30016 PN40034 PN41095 PN43714 PN55118 PN61834 PN64719
      PN72208 PN73989 PN83423 PN86337 PN87893 PN89980 PQ06194
 PQ13787  PQ27195  PQ25824  PQ25825  
 PQ32209  PQ36156  PQ32210  
 PQ47099  PQ60326  
FOR SEGMENT UWAP13     (Assembler) - REL TPFDF
 PQ32210  PQ48551  
FOR SEGMENT UWAR13     (Assembler) - REL TPFDF
 PQ32210  PQ46459  
FOR SEGMENT UWBG13     (Assembler) - REL TPFDF
 PQ32210  
To be applied in the order listed for each segment.
 
ABSTRACT OF PROBLEM
___________________
STACKREF=  processing  should  be redesigned so it is more effi-
cient.   This will greatly  reduce  the  possibility  of  CTL-10
system  errors  during  the  processing  of  long chains on ALCS
systems.  Also, when using a string constant with  STACKREF=,  a
length  check  is not performed, which may lead to unpredictable
results.
 
COMMENTS ON PROBLEM
___________________
STACKREF handling in TPFDF requires a core block  to  read/write
information  on  items  stacked  by the application.   This work
block is not hooked off of any field but is  ATTACed/DETACed  on
data level D whenever needed.  A different mechanism can be used
to improve performance by minimizing ATTAC/DETAC usage.
 
Furthermore,  since  this  processing is done in core, modifica-
tions to databases with long chains may cause a CTL-10  on  ALCS
systems.    Minimizing  ATTAC/DETAC  usage during STACKREF proc-
essing will prevent CTL-10's.
 
In addition, the STACKREF= value is limited to 4 bytes, but when
specified as a string  constant,  there  is  no  check  for  its
length.    For example, =C'ABCDE' and =C'ABCD' are considered to
be the same, duplicate value.   This can lead  to  unpredictable
results.
 
SOLUTION
________
The  internal  handling  of  the  STACKREF block is optimized by
using the existing SW00SR field SW00BSR to keep the  address  of
the  work  block.   This will reduce the need to ATTAC/DETAC and
reduce the overall path length.   The routines to  maintain  the
items in the workblock were also optimized to further reduce the
path  length.    In addition, a check was added in the DB135 and
TPFDB macros and an MNOTE 8 is now issued when when an incorrect
string length is supplied to the STACKREF parameter of the DBRED
or DBRET macros.
 
DEPENDENCIES
____________
 
Related Segments Affected By This APAR.
_______________________________________
 
Segments to be assembled or compiled:
 
Segments to be link edited:
 
Load Modules to be loaded:
 
Migration Considerations
========================
 
The DBRET example below is coded with a STACKREF= parameter containing
a string with more than four bytes:
     DBRET REF=IR75DF,STACKREF==C'ABCDE'
 
The following MNOTE will occur (this MNOTE will also occur if DBRED is
coded similarly):
   8, STACKREF STRING MUST BE 4 BYTES EXACTLY
 
-- END APAR PQ60572
 
 
 


Download file(s) using new Server: Login once to access server, leave window open, then click on link(s) below.
Package
 

    About IBM Privacy Contact