IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Using VSAM trace


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Grant Goodale

New User


Joined: 13 Nov 2010
Posts: 67
Location: Brampton, Ontario, Canada

PostPosted: Thu Mar 05, 2015 8:57 pm
Reply with quote

I have a situation where, occasionally, when writing to a VSAM KSDS, a record has not been written. The KSDS is defined as SHR(3 3) REUS.

Diagnostic statements in my Assembler code indicate that a VSAM PUT was done. I am using an ENQ with SYSTEMS scope to protect the dataset.

I want to verify that VSAM did indeed write the record. I am trying to use the VSAM trace for that purpose. I have set up the IDADVT parameters as follows:

Code:
VTRACE DSNAME(my_dsname)
       JOBNAME(my_jobname)           
       HOOK(0,1,3,15)               
       ECODE(ANY)                   
       PARM1(7FFFFFFFFFFF)         
       PARM2(7FFFFFFFFFFF)         
       END                         


I start up GTF with the following parameters:

TRACE=JOBNAMEP,USRP
JOBNAME=(jobname)
USR=(FF5)
END

The following messages are issued by GTF:

Code:

AHL121I  TRACE OPTION INPUT INDICATED FROM MEMBER member OF PDS V
TRACE=JOBNAMEP,USRP                                               
JOBNAME=(jobname)                                                 
USR=(FF5)                                                         
END                                                               
AHL103I  TRACE OPTIONS SELECTED --USR=(FF5)                       
AHL103I  JOBNAME=(jobname)                                       
54 AHL125A  RESPECIFY TRACE OPTIONS OR REPLY U                     
R 54,U                                                             
U                                                                 
AHL906I THE OUTPUT BLOCK SIZE OF    27998 WILL BE USED FOR pds_name
 OUTPUT 
        DATA SETS:                                                 
          trace_dsname                                         
AHL080I GTF STORAGE USED FOR GTF DATA:  706                       
        GTFBLOCK STORAGE     1038K BYTES (BLOK=      1024K)       
        PRIVATE STORAGE      1038K BYTES (SIZE=      1024K)       
        SADMP HISTORY          54K BYTES (SADMP=       40K)       
        SDUMP HISTORY          54K BYTES (SDUMP=       40K)       
        ABEND DUMP DATA         0K BYTES (ABDUMP=       0K)       
AHL031I GTF INITIALIZATION COMPLETE


I start up IDAVDT and then start my test job which issues a WTOR before starting its VSAM operation. At that point, I activate my IDAVDT parameters and display them:

Code:

IDAT0001I VSAM DYNAMIC TRACE WAS INITIALIZED SUCCESSFULLY     
IEE252I MEMBER IDAVDT01 FOUND IN parmlib
IDAT0002I THE FOLLOWING TRACE ENTRIES WERE STORED SUCCESSFULLY
1 my_dsname                        jobname V     
IDAT0014I SRB SCHEDULED SUCCESSFULLY ON ASID=0028             
IDAT0005I TRACE ENTRY N=1 HAS THE FOLLOWING PARAMETERS:
TYPE=V DSNAME=ksds_dsname
JOBNAME=jobname VALID=YES                                   
HOOK=000,001,003,015                                         
PARM1=7FFFFFFFFFFF PARM2=7FFFFFFFFFFF                         
ECODE=0255 KEY=                                               
IDAT0005I TRACE ENTRY N=1 HAS THE FOLLOWING PARAMETERS:  649 
TYPE=V DSNAME=ksds_dsname
JOBNAME=jobname VALID=YES                                   
HOOK=000,001,003,015                                         
PARM1=7FFFFFFFFFFF PARM2=7FFFFFFFFFFF                         
ECODE=0255 KEY=                                 
 


I let my test program run and then shut down IDAVDT. I then shut down my GTF task. I look at my GTF trace dataset (trace_dsname above) and it is empty.

Have I missed a step somewhere?
Back to top
View user's profile Send private message
nevilh

Active User


Joined: 01 Sep 2006
Posts: 262

PostPosted: Sun Mar 08, 2015 8:25 pm
Reply with quote

Have you tried without the Jobnamep and Jobname parms in the GTF input.
Failing that could OA46578 be your problem
Back to top
View user's profile Send private message
Grant Goodale

New User


Joined: 13 Nov 2010
Posts: 67
Location: Brampton, Ontario, Canada

PostPosted: Mon Mar 09, 2015 6:23 pm
Reply with quote

I have removed the job name references but, still no output. I see that OA46578 is still open so I will have to research that one.

In my test job, I have a WTOR in the first step and my VSAM stuff in the second step. When I get the WTOR, I start up IDAVDT and GTF before I reply. I do see the following message issued when IDAVDT starts up:

Code:
IDAT0003E ERROR FOUND WHEN PROCESSING VSAM DYNAMIC TRACE FUNCTION
FUNCTION=ENABLE                                                 
ERROR=SEARCH FOR VSAM CONTROL BLOCK STRUCTURE FAILED             


I had hoped that the trace would keep "listening" until it has been stopped. Perhaps that is not the case. I will change things so that my WTOR is immediately after the ACB has been opened up.

Thanks for the info. I will keep posting my results on this board.
Back to top
View user's profile Send private message
Grant Goodale

New User


Joined: 13 Nov 2010
Posts: 67
Location: Brampton, Ontario, Canada

PostPosted: Tue Mar 24, 2015 12:16 am
Reply with quote

I have changed my code to that my "pausing" WTOR is actually in the source program itself. This has eliminated the IDAT0003E message but I still get no trace data.
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Tue Mar 24, 2015 3:09 pm
Reply with quote

Maybe you can find a solution in :

z/OS DFSMSdfp Diagnosis GY27-7618-16 Chapter 19

VSAM Demystified SG24-6105-02
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Access to non cataloged VSAM file JCL & VSAM 18
No new posts How to get a stack trace on a looping... ABENDS & Debugging 5
No new posts Merge two VSAM KSDS files into third ... JCL & VSAM 6
No new posts XL C Trace Preprocessor Output All Other Mainframe Topics 3
No new posts CVDA value for RRDS VSAM dataset. CICS 2
Search our Forums:

Back to Top