Panvalet PAN#2 S0C1 CSECT PANI025, offset X'1182' on Restore
search cancel

Panvalet PAN#2 S0C1 CSECT PANI025, offset X'1182' on Restore

book

Article ID: 277018

calendar_today

Updated On:

Products

Panvalet

Issue/Introduction

Doing a Panvalet Restore of all the members on a Panvalet Protection file to newly created PANLIB.  Over 500 members restored before receiving a S0C1 abend.

 

IDI0002I Module PAN#2, CSECT PANI025, offset X'1182': Abend S0C1 
IEA995I SYMPTOM DUMP OUTPUT  161                                        
SYSTEM COMPLETION CODE=0C1  REASON CODE=00000001                        
 TIME=21.23.10  SEQ=03382  CPU=0000  ASID=007E                          
 PSW AT TIME OF ERROR  078D1000   00023A94  ILC 2  INTC 01              
   ACTIVE MODULE           ADDRESS=00000000_00007B00  OFFSET=0001BF94   
   NAME=PAN#2                                                           
   DATA AT PSW  00023A8E - 47F0C18F  00DEAD00  58F0C811                 
   AR/GR 0: 007F8294/0003AEEE   1: 00000000/000459F0                    
         2: 00000000/00000000   3: 00000000/0003A153                    
         4: 00000000/0004661D   5: 00000000/00045A28                    
         6: 00000000/000468FB   7: 00000000/00000001                    
         8: 00000000/0000000A   9: 00000000/900239AE                    
         A: 00000000/0002B2B0   B: 00000000/00022910                    
         C: 00000000/0002390F   D: 00000000/00038408                    
         E: 00000000/60023862   F: 01000002/FFFFFFFF                    
 END OF SYMPTOM DUMP                                                    

Environment

Panvalet V14.6

Resolution

A S0C1 abend when processing a Panvalet PANLIB or Protection file normally indicates a corruption on the file. 
 

For the Restore from the Protection file, try skipping the corrupted member.

1)   Run a ++PRINT 1-UP against the Protection file

  //PANPRT    EXEC PGM=PAN#2,PARM='OPEN=INP'           
//SYSPRINT DD SYSOUT=*                        
//PANDD1   DD DISP=SHR,DSN=your.panvalet.panlib             
//PANDD2    DD DUMMY                                        
//PANDD3    DD DISP=SHR,DSN=your.Panvalet.Protection.file
//SYSIN     DD *                                            
++PRINT 1-UP,BACKUP                                 
//*                                                          

 

2)   From the output of the failing Restore job, find the last member restored:
  PROG0AAA    1    34    DATA        TEST ACTV DSABL 10/07/74 04/11/75
PROG0BBB         84    DATA        TEST ACTV DSABL 10/16/74 07/25/86
PROG0CCC    4    76    DATA        TEST ACTV DSABL 04/14/75 07/29/75   

         In this example, PROG0CCC was the last member restored.

 

3)   Find PROG0CCC in the 1-UP report and determine what member is corrupted. 
         In this example, say that PROG0DDD is the corrupted member and the member after it is PROG0EEE.

 

4)   Run a new RESTORE job starting with the member after the corrupted one and restore the remaining members in the Protection file:

  ++RESTORE  PROG0EEE,999999999