Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to - Diagnose the errors of a "MVSExec" #388

Open
FALLAI-Denis opened this issue Jul 17, 2023 · 4 comments
Open

How to - Diagnose the errors of a "MVSExec" #388

FALLAI-Denis opened this issue Jul 17, 2023 · 4 comments

Comments

@FALLAI-Denis
Copy link

FALLAI-Denis commented Jul 17, 2023

Hi,

When debugging and executing our language.groovy scripts, we are regularly confronted with execution errors internal to an MVSExec, and we have great difficulty in diagnosing.

These errors may concern the file allocations managed in the background by BPXWDYN, or the various utilities called by MVSExec, as COBOL compiler.

Unlike a regular job that has JESMSGLG and JESYSMSG outputs that can be parsed, running an MVSExec produces nothing, at least no output or log we succes to find.

Sample use case of our Cobol.groovy:

[2023-07-12T16:00:48.336Z] [18-00-37.000] : JOB Start ; Executing steps ----------
[2023-07-12T16:00:48.336Z] [18-00-38.000] : precompile COBOL ; RC = 0 ; Duree Step : 1.660 seconds
[2023-07-12T16:00:48.336Z] [18-00-41.000] : PreCompil DB2 ; RC = 4 ; Duree Step : 2.749 seconds
[2023-07-12T16:00:48.336Z] [18-00-44.000] : Compil ; RC = 14905344 ; Duree Step : 3.365 seconds
[2023-07-12T16:00:48.336Z] *! The compile return code (14905344) for CEAT5/pacbase/COBOL/SQII11K.cbl exceeded the maximum return code allowed (4)

No Java exception is thrown...
No log is produced... Not even the log containing the SYSPRINT output of the COBOL compilation step...
The return code of the MVSExec step is not significant...
Nothing to analyze...

For information, in this specific case, after long research, we assumed that it was the PDS-E file (library) receiving the object modules at the compilation output which had reached its limit: 16 extensions, 99% use...
But that's just a guess...

Is there a way to parse something at an MVSExec run, or at MVSJob level, that would be the equivalent of a JESMSGLG or JESYSMSG output?

Thanks.

@dennis-behm
Copy link
Member

@FALLAI-Denis Unfortunately, the BPXWDYN and the processing from z/OS Unix is not equal to a JCL process.

I just posted a response to IBM/dbb#170 . Let's do the same for you ... with the return code of 14905344

Converting this into a Hex-value: https://www.rapidtables.com/convert/number/decimal-to-hex.html?x=14905344 gives us a E37 .

Looking into the zOS documentation for E37: https://www.ibm.com/docs/en/zos/2.5.0?topic=codes-e37

image

Then lets move on to IEC032I: https://www.ibm.com/docs/en/zos/2.5.0?topic=messages-iec032i

The return code in the system log will give you the reason why the compile abend'ed.

Hope that helps.

@dennis-behm
Copy link
Member

I created an documentation enhancement request for this: https://ibm-z-software-portal.ideas.ibm.com/ideas/DBB-I-51

@FALLAI-Denis
Copy link
Author

Hi @dennis-behm

Thanks for the information about decoding the return code and for opening a documentation enhancement request on DBB.

After that remains rather empirical... we know that the code 14905344 corresponds to an E37, but that does not tell us which file is concerned.

I don't think that it is directly DBB which is in question, but rather the JZOS component which must be the base of development of DBB.

@mhardin18
Copy link

@FALLAI-Denis Unfortunately, the BPXWDYN and the processing from z/OS Unix is not equal to a JCL process.

Yes, decoding/debugging MVSExec issues is a pain because of this.

What about incorporating https://www.ibm.com/docs/en/zos/3.1.0?topic=output-message-processing somehow? I'm out of my comfort zone here, so please tell me if I'm off in left field.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants