OnDemand User Group

Support Forums => z/OS Server => Topic started by: Ed_Arnold on November 06, 2015, 08:54:07 AM

Title: COBOL V5 Can Cause Storage Leak and 878 Abend
Post by: Ed_Arnold on November 06, 2015, 08:54:07 AM
We've encountered this problem:


PI49958 -                                                         
  ****************************************************************
  * USERS AFFECTED: Enterprise COBOL V5.x users compiling and    *
  *                 running programs that are compiled with the  *
  *                 THREAD compiler option and run under a       *
  *                 multi-threaded POSIX(ON) environment, and    *
  *                 that contain QSAM or VSAM files OPENed and   *
  *                 then CLOSEed repeatedly.                     *
  *                                                              *
  ****************************************************************
  * PROBLEM DESCRIPTION: There is a small memory leak in the     *
  *                      CLOSE processing of the file.           *
  *                                                              *
  ****************************************************************
  * RECOMMENDATION: Apply provided service.                      *
  ****************************************************************
  During OPEN of QSAM/VSAM file, a control block is created to   
  associate the OPENed file with the current thread. If the thread
  is cancelled, that information is used to correctly close all   
  files associated with that thread.  During CLOSE processing, the
  control block that associate the file CLOSEing and the thread   
  should be removed.  The issue is that removal was not done     
  correctly.                                                     
                                                                 
  FIXCAT keyword:  COB0501T/K   COB0502T/K                       
                                                                 
                                                                 
  The logic of the CLOSE file processing to handle THREAD in     
  POSIX(ON) is fixed to correctly remove that control block used 
  to associate the file with the thread. Thus removing the memory
  leak.                                                           


So you may want to compile exits with COBOL V4 until you have the PTF applied:

http://www-01.ibm.com/support/docview.wss?uid=swg21883472 (http://www-01.ibm.com/support/docview.wss?uid=swg21883472)

Ed