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

S04E Error Encountered


IBM Mainframe Forums -> DB2
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
gaurav.rajvanshi

New User


Joined: 08 Jul 2010
Posts: 23
Location: Mainframe World

PostPosted: Wed Jul 13, 2011 12:26 pm
Reply with quote

I am facing a regular abend which shows the following message in spool:

An S04E abend occurred.

*******************************************
* Analysis of Error *
*******************************************

DB2 has returned a 00E7000C reason code after a S04E abend


An invalid address supplied by the application program was found.

Probable cause:
The parameter list for the SQL statement has been overlaid.
Notify the system programmer.

I have an SQL in the program which selects data from a table, which returns the above error when the query tries to fetch the record. Also, i see one more thing in the spool:

ADDRESS = 40D815C8 *** Invalid ***
:DCLGEN-FIELD CHAR(2)

I have consulted the DBAs on this and they confirmed there is no corruption in DB2.

Could someone please guide as to what can be the possible resolution to this.
Back to top
View user's profile Send private message
gylbharat

Active Member


Joined: 31 Jul 2009
Posts: 565
Location: Bangalore

PostPosted: Wed Jul 13, 2011 12:57 pm
Reply with quote

Can you please post the entire error message from the spool in the code tags. What i think is there is a problem with the DCLGEN ...
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


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

PostPosted: Wed Jul 13, 2011 1:04 pm
Reply with quote

publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db2z9.doc.codes/src/tpc/00e7000c.htm
Back to top
View user's profile Send private message
gaurav.rajvanshi

New User


Joined: 08 Jul 2010
Posts: 23
Location: Mainframe World

PostPosted: Wed Jul 13, 2011 1:08 pm
Reply with quote

Bharat,

Forgot to mention but the issue occurs on any one value randomly. To restart the job, i delete the current record and the job runs smooth. The job is scheduled a daily run and it abends daily on any random value.
Back to top
View user's profile Send private message
sushanth bobby

Senior Member


Joined: 29 Jul 2008
Posts: 1020
Location: India

PostPosted: Wed Jul 13, 2011 1:14 pm
Reply with quote

gaurav,

The basic explanation for the error is
Quote:
"The application program supplied an invalid address."


Check the link pointed by peter, it will explain what's happening.

Post the entire message from spool, DCLGEN and you said it occurs randomly, post both type of input records from the file.

Thanks,
Sushanth
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Wed Jul 13, 2011 6:11 pm
Reply with quote

gaurav.rajvanshi wrote:
Bharat,

Forgot to mention but the issue occurs on any one value randomly. To restart the job, i delete the current record and the job runs smooth. The job is scheduled a daily run and it abends daily on any random value.


Assuming it is DB2, it is not a "record" you are deleting, as DB2 does not have records.

I find it difficult to believe that your prod is failing daily, you delete "whatever" and everything is then "smooth". When you get around to fixing the problem, are you going to put back all the deleted data?
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Wed Jul 13, 2011 6:23 pm
Reply with quote

assuming this is static sql, since a pvar is being corrupted.

even if the dclgen was bad,
it would not matter,
the bind will catch most problems.

1. what version of db2 are you running?

2. I suggest that your code (and not your sql) is doing something to corrupt your own storage.

3. as bill said, deleting a record to avoid the problem qualifies you to be a US congressman, senator or even president. But, you are totally unqualified to say:
Mainframe Skills: COBOL,JCL, DB2, CICS

the sqlcode is indicating corrupt storage.
until you find and correct the code that is corrupting your storage
I can only hope that your site is not one that is being outsourced by a company that I do business with.
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Wed Jul 13, 2011 7:34 pm
Reply with quote

Quote:
I am facing a regular abend


if it is regular it is not an abnormal event any longer,
it should be considered a feature and documented as such icon_cool.gif
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Thu Jul 14, 2011 5:35 am
Reply with quote

enrico-sorichetti wrote:
Quote:
I am facing a regular abend


if it is regular it is not an abnormal event any longer,
it should be considered a feature and documented as such icon_cool.gif


I kinda like this enrico :-)

Run Notes for Job ID10TDB2

This Job is failing every run with a System Error (sic). We have investigated the program code thoroughly, and have established that this is a feature of the code.

We have included new code which will display, as each piece of data is processed, a command to delete the data if the feature is utilised for that data.

We have provided a rexx (sic) to take the list of commands and execute the last one. This will remove the data which initiated the feature and ID10TDB2 can then be restarted. Please ignore any error messages from the rexx.

Yours,

The High-Profile Development Team
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Thu Jul 14, 2011 6:16 am
Reply with quote

gaurav.rajvanshi wrote:
[...]
ADDRESS = 40D815C8 *** Invalid ***
:DCLGEN-FIELD CHAR(2)
[...]



It can be co-incidence, but the "address" above is "Space, Q, New Line, H".

If you are using AMODE 24, your "address" has definitely been over-written. If not 24 maybe not, but three clear keyboard characters and a possible for an application use is to me a steep co-incidence. If not 24, how is the address invalid?

Mainly how programs screw addresses is by over-writing save areas, but there are other possibilities.

I would try to search the dump for the "address". If it happens to turn up in a block of some sort of text.... find all occurences, note down addresses, caculate where those are, look at what those areas should contain. If you're getting anywhere this way, you then just have to find out how it happened.

Otherwise, just do all the usual stuff. Dump on screen, listings on desk, pencil, back of some old listing for calculations, notes, etc, steady supply of coffee, eye on the clock because you know the OPS will have to escalate in two hours time if you haven't got anywhere with it. If you start going in circles, take a break away from your desk for five minutes (usually a side-effect of the steady supply of coffee anyway) and re-start, forgetting everything you "know" about it, because it is likely something you "know" which is wrong.

That is the "usual" way you operate, or similar?
Back to top
View user's profile Send private message
BrantleyL

New User


Joined: 03 Jun 2010
Posts: 14
Location: Dallas TX

PostPosted: Wed Aug 03, 2011 11:53 pm
Reply with quote

We also receive this abend with some regularity. If you look in your DB2 "Job" (ours is DB2PMSTR), this is what we find:
Code:

05.59.15 STC09881  DSNT375I  -MKDB2P PLAN=NMPM7550 WITH  914           
   914                     CORRELATION-ID=0000NMPP7550                 
   914                     CONNECTION-ID=NMPP7550                     
   914                     LUW-ID=NMGNET.DB2PV.C821B223F421=144414     
   914                     THREAD-INFO=OPCPROD:*:*:*                   
   914                     IS DEADLOCKED WITH PLAN=NMPM7260 WITH       
   914                     CORRELATION-ID=0000NMPP7260                 
   914                     CONNECTION-ID=NMPM7260                     
   914                     LUW-ID=NMGNET.DB2PV.C821ABA899BC=144102     
   914                     THREAD-INFO=OPCPROD:*:*:*                   
   914                     ON MEMBER DB2P                             
05.59.15 STC09881  DSNT501I  -MKDB2P DSNILMCL RESOURCE UNAVAILABLE  915
   915                        CORRELATION-ID=0000NMPP7550             
   915                        CONNECTION-ID=NMPP7550                   
   915                        LUW-ID=NMGNET.DB2PV.C821B223F421=144414 
   915                        REASON 00C90088                         
   915                        TYPE 00000304                           
   915                        NAME NMPD001 .NMPG170 .X'064B1D' '.X'1F'


So program NMPM7550 was deadlocked with NMPM7260. This program is restartable, so the abending job was restarted after the other one finished.
Back to top
View user's profile Send private message
Bill Woodger

Moderator Emeritus


Joined: 09 Mar 2011
Posts: 7309
Location: Inside the Matrix

PostPosted: Thu Aug 04, 2011 4:24 am
Reply with quote

Brant,

I'm not clear about what you are saying.

Are you saying the you regularly get S0C4, yours is caused by "deadlock", you wait until Job 1 finishes before restarting Job 2 and you think this is what is happening with TS's problem?

Or is there a question?

I've a question or two for you.

  • Who gets charged for the wasted resources when a job fails?
  • Why do you accept as "normal" (not an abend anymore, see above) a situation your system design has not coped with?
  • What do you do when a deadlock is caused, not for the "normal" reason, but for some new one you don't know of yet?
I could go on (some say I do, no doubt0/
Back to top
View user's profile Send private message
BrantleyL

New User


Joined: 03 Jun 2010
Posts: 14
Location: Dallas TX

PostPosted: Thu Aug 04, 2011 6:34 pm
Reply with quote

Bill,

S04E (not S0C4)...

Yes, from what happens here, that could be the problem. For sure, they should check what's in DB2PSTR (if that's the right job).

On your questions...

In an old job, we would have been charged - based on the accounting code in the job - but here, the company just pays for all the CPU.

Our system has several tables that are updated in NUMEROUS places. We typically have frequent commits, but sometimes (more so with our old SLOWER CPU) things bog down. This may be the cause here. Hard to say for sure. We also get -911s. Which we also just restart. Most of our programs are written to be restartable.
Back to top
View user's profile Send private message
gaurav.rajvanshi

New User


Joined: 08 Jul 2010
Posts: 23
Location: Mainframe World

PostPosted: Thu Sep 01, 2011 12:55 am
Reply with quote

dbzTHEdinosauer wrote:

3. as bill said, deleting a record to avoid the problem qualifies you to be a US congressman, senator or even president. But, you are totally unqualified to say:
Mainframe Skills: COBOL,JCL, DB2, CICS

the sqlcode is indicating corrupt storage.
until you find and correct the code that is corrupting your storage
I can only hope that your site is not one that is being outsourced by a company that I do business with.


I had analyzed the problem and got the program corrected.
Till the time, I get to any permanent solution, the only way was to delete the corrupt record from the file and keep the job running. I only put my problem in the forum to get any sort of good help and not asking people to check my eligibility to become a US politician or something icon_eek.gif
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10872
Location: italy

PostPosted: Mon Sep 19, 2011 2:36 am
Reply with quote

follow on

Quote:
if it is regular it is not an abnormal event any longer,
it should be considered a feature and documented as such


found somewhere, seen it more than 10 years ago
Back to top
View user's profile Send private message
sushanth bobby

Senior Member


Joined: 29 Jul 2008
Posts: 1020
Location: India

PostPosted: Mon Sep 19, 2011 9:18 pm
Reply with quote

Good one... Enrico..
Back to top
View user's profile Send private message
dick scherrer

Moderator Emeritus


Joined: 23 Nov 2006
Posts: 19244
Location: Inside the Matrix

PostPosted: Mon Sep 19, 2011 10:05 pm
Reply with quote

Reminds me of an old sales slogan:

"Let's slap some lipstick on this pig".

heh heh heh

d
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 -> DB2

 


Similar Topics
Topic Forum Replies
No new posts Error to read log with rexx CLIST & REXX 11
No new posts Error when install DB2 DB2 2
No new posts CLIST - Virtual storage allocation error CLIST & REXX 5
No new posts Error while running web tool kit REXX... CLIST & REXX 5
No new posts Getting Error while trying to establi... DB2 3
Search our Forums:

Back to Top