View previous topic :: View next topic |
Author |
Message |
deadlycoder Beginner

Joined: 25 May 2006 Posts: 24 Topics: 11
|
Posted: Wed Jul 26, 2006 2:10 am Post subject: Regarding S0C4 |
|
|
Hi all,
I am facing a strange problem of S0C4 since yesterday.It is like this.....
I have a simple COBOL program
Code: |
IDENTIFICATION DIVISION.
PROGRAM-ID. SAMPLE1.
PROCEDURE DIVISION.
DISPLAY 'HI AND HELLO'.
STOP RUN.
|
Now I am trying to run this program using a JCL which looks like this
Code: |
//CPDFVG0A JOB (8856,AR),
// CLASS=L,REGION=4M,
// MSGCLASS=X,
// MSGLEVEL=(1,1),
// NOTIFY=CPDFVG0
//JOBLIB DD DSN=CPDFVG0.COPY.LOADLIB3,DISP=SHR
//STEP1 EXEC PGM=SAMPLE1,REGION=4M
//STEPLIB DD DSN=CDSING0.COPY.LOADLIB3,DISP=SHR
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
|
I compiled the program Sample1 and put it's loadmodule Sample1(same as program name) in the PDS CPDFVG0.COPY.LOADLIB3
When I submit this JCL it throws S0C4 error.
Kindly let me know why is this happening.
with regards,
Deadly Coder |
|
Back to top |
|
 |
shekar123 Advanced
Joined: 22 Jul 2005 Posts: 528 Topics: 90 Location: Bangalore India
|
Posted: Wed Jul 26, 2006 3:01 am Post subject: |
|
|
deadlycoder,
I have few questions:
1.Was your program compiled successfully ?
2.Since the load module resides in the PDS CPDFVG0.COPY.LOADLIB3 and you have coded in the JOBLIB DD statement when you run the JCL code ,you should get S806 Error because the load module does not reside in the PDS CDSING0.COPY.LOADLIB3 as STEPLIB overrides the JOBLIB you should be getting that error since System will first look into the PDS specified in STEPLIB and then JOBLIB.However if you have copied the loadmodule to the PDS CDSING0.COPY.LOADLIB3 then you will get RC=0.
3.Can you post the exact error when u get SOC4 ?
4.Please put the code in between CODE tags which will form the real Mainframe code and it helps to understand better. _________________ Shekar
Grow Technically |
|
Back to top |
|
 |
deadlycoder Beginner

Joined: 25 May 2006 Posts: 24 Topics: 11
|
Posted: Wed Jul 26, 2006 3:18 am Post subject: |
|
|
Hi Shekar,
A small correction regarding the jcl code
Code: |
//CPDFVG0A JOB (8856,AR),
// CLASS=L,REGION=4M,
// MSGCLASS=X,
// MSGLEVEL=(1,1),
// NOTIFY=CPDFVG0
//JOBLIB DD DSN=CPDFVG0.COPY.LOADLIB3,DISP=SHR
//STEP1 EXEC PGM=SAMPLE1,REGION=4M
//STEPLIB DD DSN=CPDFVG0.COPY.LOADLIB3,DISP=SHR
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
|
The steplib used was same as Joblib.
I was getting the compile code as 0 i.e the program was compiled successfully.
The error which I got was
Code: |
TSS7000I CPDFVG0 Last-Used 26 Jul 06 01:58 System=BSYS Facility=BATCH
IEF236I ALLOC. FOR CPDFVG0A STEP1
IEF237I 642A ALLOCATED TO JOBLIB
IEF237I 642A ALLOCATED TO STEPLIB
IEF237I JES2 ALLOCATED TO SYSOUT
IEF237I JES2 ALLOCATED TO SYSPRINT
IEF237I JES2 ALLOCATED TO SYSUDUMP
IEA995I SYMPTOM DUMP OUTPUT
SYSTEM COMPLETION CODE=0C4 REASON CODE=00000010
TIME=01.59.22 SEQ=04982 CPU=0000 ASID=00DA
PSW AT TIME OF ERROR 078D1000 9A510B76 ILC 4 INTC 10
ACTIVE LOAD MODULE ADDRESS=1A50EC70 OFFSET=00001F06
NAME=IGZCEV5
DATA AT PSW 1A510B70 - 300CBE3F D0D595C5 302B4770
GR 0: 8002A5E0 1: 1A5029E4
2: 8001A188 3: D741E388
4: 00000000 5: 00000001
6: 00007108 7: 00000004
8: 1A50B440 9: 000077FC
A: 00000001 B: 1A510728
C: 1A506018 D: 1A502908
E: 0001A188 F: 00000000
F SYMPTOM DUMP
I CPDFVG0A STEP1 - COMPLETION CODE - SYSTEM=0C4 USER=0000 REASON=00000010
CPDFVG0.COPY.LOADLIB3 KEPT
VOL SER NOS= CTLB26.
|
_________________ 'Achievement is almost automatic when the goal becomes an inner commitment' |
|
Back to top |
|
 |
German Castillo Beginner

Joined: 23 Dec 2005 Posts: 83 Topics: 2 Location: Caracas, Venezuela
|
Posted: Wed Jul 26, 2006 3:39 am Post subject: |
|
|
Hello!
The abended module IGZCEV5 is trying to do something, perhaps it needs some other module. Check for weak external errors in your Lked procedure. Check with your system programmers wheter or not you have had a new install or datasets movements.
Are your Cobol/Language Environment Load datasets in Linklst/Lpa list? If not you should concat the proper RUNTIME datasets to your JOBLIB/Steplib DD (In either one of them should be enough). As a counterpart check your compile procedure for those datasets, belonging to this items which should also be in your SYSLIB Compile/Lked datasets. _________________ Best wishes,
German Castillo |
|
Back to top |
|
 |
kolusu Site Admin

Joined: 26 Nov 2002 Posts: 12378 Topics: 75 Location: San Jose
|
Posted: Wed Jul 26, 2006 8:22 am Post subject: |
|
|
deadlycoder,
Here is the exaplanation of the abend code S0C4 with a reason code of 10
Code: |
10 Segment-translation exception. This error is caused by
one of the following:
o A program that was running disabled attempted to
reference storage while the page table for that
storage was paged out. To correct the error,
page-fix the storage before a program running
disabled attempts to reference it.
o A program attempted to reference storage that had
not been obtained. To correct the error, allocate
the storage before attempting to reference it.
o A program running in a subspace attempted to
reference storage that was not accessible to the
subspace at the time of error. To correct the
error, ensure that the program running in a
subspace references only the storage assigned to
that subspace, or storage that can be referenced
by all subspaces.
|
Hope this helps...
Cheers
Kolusu _________________ Kolusu
www.linkedin.com/in/kolusu |
|
Back to top |
|
 |
deadlycoder Beginner

Joined: 25 May 2006 Posts: 24 Topics: 11
|
Posted: Fri Jul 28, 2006 1:05 am Post subject: |
|
|
Hi Kolusu,
Even I have referred to this column but I am not able to fix this problem. I am not able to store the load module in system or admin defined libraries,I don't have authority to save the load module there.
So I stored it in my library(i.e. in User defined library). U can see the loadlib with first qualifier as my user ID.
I think JES is not able to locate this module in the main memory.
Kindly tell me what should i do?
Thanks and regards,
Deadly coder. |
|
Back to top |
|
 |
shekar123 Advanced
Joined: 22 Jul 2005 Posts: 528 Topics: 90 Location: Bangalore India
|
Posted: Fri Jul 28, 2006 1:19 am Post subject: |
|
|
deadlycoder,
Can you post the exact JCL Syntax which u have used and giving the Steplib DD Dataset your private library should not be problem ? Try compiling once again and give the loadlib the same name as what u are using in the Steplib . _________________ Shekar
Grow Technically |
|
Back to top |
|
 |
deadlycoder Beginner

Joined: 25 May 2006 Posts: 24 Topics: 11
|
Posted: Fri Jul 28, 2006 1:30 am Post subject: |
|
|
Hello shekar,
You can find the JCL syntax in my first post above.
I am using the same JCL and program. I have compiled the program and kept the load module in the specified library.
I have used steplib as well as joblib which have same dsn. _________________ 'Achievement is almost automatic when the goal becomes an inner commitment' |
|
Back to top |
|
 |
German Castillo Beginner

Joined: 23 Dec 2005 Posts: 83 Topics: 2 Location: Caracas, Venezuela
|
Posted: Fri Jul 28, 2006 6:46 am Post subject: |
|
|
Hello,
IGZCEV5 belongs to LE and It has some CSECTS, does several 'calls', normally to COBOL Init routines described in your load module preface and/or as well as other LE modules. From this fact, we may think that your load module hasn't even started to execute...
All the SOC4 I have gotten from this module are related to accidentally using old libraries, suchs as COB2LIB or even VSCCLIB. As I told you before, look out for the proper one, which is SCEERUN. One way of this "accident" happening could be a misplaced JOBLIB/STEPLIB DD statement in your JCL, or a bad concatenation in the LNKLST/LPALST. If you want to be sure, just place the SCEERUN ahead of your loadlib in your JOBLIB/STEPLIB, in which case just talk to your system support people and explain the situation. As a sidenote double check for the proper LE libraries also in your comple/lked job, you may need to recompile the module.
Hope it helps _________________ Best wishes,
German Castillo |
|
Back to top |
|
 |
kingo Intermediate
Joined: 01 Sep 2006 Posts: 167 Topics: 40 Location: chennai
|
Posted: Sun Sep 03, 2006 11:23 pm Post subject: |
|
|
Even I was facing similar kind of problem it was due to the mismatch in the record length...... _________________ IF YOU ARE NOT FOCUSSED ON GOAL ALL YOU SEE IS OBSTACLE. |
|
Back to top |
|
 |
ramesh161 Beginner
Joined: 09 May 2006 Posts: 5 Topics: 0
|
Posted: Tue Sep 05, 2006 10:11 pm Post subject: |
|
|
I want to add more info. on the above abend
While running the program, it will try to write the temporary data into the memory. If that memory is already filled, then it will give SOC4(data protection error). It means the memory space already having the data. so system won't allow to write into that protection area. |
|
Back to top |
|
 |
|
|