🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: bit.listserv.tsorexx
8 messages
8 total messages Started by Steve Thompson Tue, 19 Feb 2013 23:33
EXECIO vs. Sx37
#427
Author: Steve Thompson
Date: Tue, 19 Feb 2013 23:33
40 lines
2728 bytes
I have a large REXX that uses EXECIO to write members into a PDS (alloc,
execio ...(...finis), free...).

Ok, so I write or re-write a member some number of times and get an Sx37.
Well, that gives RC=20, and in that case I go execute an IEBCOPY within
the REXX code.

What happens if the ABEND is NOT a Sx37? Well, I go do the IEBCOPY....
come back and redrive to get the S??? ABEND again. I want to do a better
job of error trapping and recovery than just blindly doing the compress.

I have tried using OUTTRAP and can't capture the message(s) so I can
interrogate them to know what is the correct course of action for recovery
(while I CAN do that for ocopy!!).

The irony of this is, other code I have written for doing dump analysis
with IPCS, I've jumped through hoops to get rid of messages that just
become noise to the user. Here I need to capture message to interrogate
them and I just can't seem to find the way to do it.

I have been using Google for the past hour and I have not seen one example
of how to capture these messages, but I did see an old post that says it
is impossible.

I have been searching all the PDFs that I have for TSO/REXX and I just
don't see how to do this.

Is there some method that I am missing or is that old post correct, that
you can't intercept or capture those IEC032I messages (or something
similar) because they are done via WTO? What about the IRX0250E messages,
that show up in the SYSTSPRT with the other output I'm creating?



Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#328
Author: Adrian Stern
Date: Wed, 20 Feb 2013 07:04
53 lines
3241 bytes
Make the pds into a library

-----Original Message-----
From: TSO REXX Discussion List [mailto:TSO-REXX@VM.MARIST.EDU] On Behalf Of
Steve Thompson
Sent: den 20 februari 2013 00:32
To: TSO-REXX@VM.MARIST.EDU
Subject: [TSO-REXX] EXECIO vs. Sx37

I have a large REXX that uses EXECIO to write members into a PDS (alloc,
execio ...(...finis), free...).

Ok, so I write or re-write a member some number of times and get an Sx37.
Well, that gives RC=20, and in that case I go execute an IEBCOPY within
the REXX code.

What happens if the ABEND is NOT a Sx37? Well, I go do the IEBCOPY....
come back and redrive to get the S??? ABEND again. I want to do a better
job of error trapping and recovery than just blindly doing the compress.

I have tried using OUTTRAP and can't capture the message(s) so I can
interrogate them to know what is the correct course of action for recovery
(while I CAN do that for ocopy!!).

The irony of this is, other code I have written for doing dump analysis
with IPCS, I've jumped through hoops to get rid of messages that just
become noise to the user. Here I need to capture message to interrogate
them and I just can't seem to find the way to do it.

I have been using Google for the past hour and I have not seen one example
of how to capture these messages, but I did see an old post that says it
is impossible.

I have been searching all the PDFs that I have for TSO/REXX and I just
don't see how to do this.

Is there some method that I am missing or is that old post correct, that
you can't intercept or capture those IEC032I messages (or something
similar) because they are done via WTO? What about the IRX0250E messages,
that show up in the SYSTSPRT with the other output I'm creating?



Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#329
Author: Steve Thompson
Date: Wed, 20 Feb 2013 15:10
41 lines
2636 bytes
From:   Adrian Stern <adriangstern@GMAIL.COM>
Date:   02/20/2013 01:04 AM



Make the pds into a library

<SNIPPAGE>

What happens if the ABEND is NOT a Sx37? Well, I go do the IEBCOPY....
come back and redrive to get the S??? ABEND again. I want to do a better
job of error trapping and recovery than just blindly doing the compress.

I have tried using OUTTRAP and can't capture the message(s) so I can
interrogate them to know what is the correct course of action for recovery
(while I CAN do that for ocopy!!).

<SNIPPAGE>

That is not an option at this point. We discussed this at length and there
is a problem where PDSE does not allow us to truncate it like you can a
PDS (compress and then release the free space).

Meanwhile, your approach ignores the problem that I hit:  "redrive to get
the S??? ABEND again."

Even a PDSE can fill up or have other errors (which from experience make
them a total loss, having to be deleted and redefined).

So it turns out that some simple answers miss other issues. EXECIO returns
RC=20 regardless of the type of ABEND or error it got. There are other I/O
errors and/or storage errors that one can get while doing I/O -- but no
way that I've found, so far, that allow me to interrogate those messages
to know what to do.

Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#330
Author: Paul Gilmartin
Date: Wed, 20 Feb 2013 15:16
27 lines
2317 bytes
On Feb 20, 2013, at 08:01, Steve Thompson wrote:

> From:   Adrian Stern <adriangstern@GMAIL.COM>
> Date:   02/20/2013 01:04 AM
>
> Make the pds into a library
>
> <SNIPPAGE>
>
> Even a PDSE can fill up or have other errors (which from experience make
> them a total loss, having to be deleted and redefined).
>
> So it turns out that some simple answers miss other issues. EXECIO returns
> RC=20 regardless of the type of ABEND or error it got. There are other I/O
> errors and/or storage errors that one can get while doing I/O -- but no
> way that I've found, so far, that allow me to interrogate those messages
> to know what to do.
>
Make the PDS into a z/OS UNIX directory.  Write to it with
address SYSCALL instead of EXECIO.  Address SYSCALL returns
very distinct error diagnostics.

-- gil

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#331
Author: Steve Thompson
Date: Wed, 20 Feb 2013 15:51
39 lines
2482 bytes
From:   Paul Gilmartin <PaulGBoulder@AIM.COM>
Date:   02/20/2013 09:25 AM



On Feb 20, 2013, at 08:01, Steve Thompson wrote:

> From:   Adrian Stern <adriangstern@GMAIL.COM>
> Date:   02/20/2013 01:04 AM
>
> Make the pds into a library
>
> <SNIPPAGE>
>
> Even a PDSE can fill up or have other errors (which from experience make
> them a total loss, having to be deleted and redefined).
>
> So it turns out that some simple answers miss other issues. EXECIO
returns
> RC=20 regardless of the type of ABEND or error it got. There are other
I/O
> errors and/or storage errors that one can get while doing I/O -- but no
> way that I've found, so far, that allow me to interrogate those messages
> to know what to do.
>
Make the PDS into a z/OS UNIX directory.  Write to it with
address SYSCALL instead of EXECIO.  Address SYSCALL returns
very distinct error diagnostics.
<snip>

If that had been a valid option, I wouldn't have been having problems with
ocopy to start with.

Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#332
Author: John McKown
Date: Wed, 20 Feb 2013 15:59
67 lines
3757 bytes
Just for my own edification, are you open to replacing the EXECIO with some
other, functionally equivalent, facility? I don't have one on hand, but it
appears to me that EXECIO is simply not designed to do what you want. So
maybe what is needed is a "superset EXECIO" function. EXECIO is not a REXX
language facility, per se. It is an "external" routine which is designed to
work within REXX. Which means that we (OK, somebody) could run a
functionally equivalent routine in some compiled language.

Just a thought. I _might_ have the talent to write such a thing. But
getting the physical energy is another matter. I hate winter.


On Wed, Feb 20, 2013 at 9:37 AM, Steve Thompson <sthompson@us.ibm.com>wrote:

> From:   Paul Gilmartin <PaulGBoulder@AIM.COM>
> Date:   02/20/2013 09:25 AM
>
>
>
> On Feb 20, 2013, at 08:01, Steve Thompson wrote:
>
> > From:   Adrian Stern <adriangstern@GMAIL.COM>
> > Date:   02/20/2013 01:04 AM
> >
> > Make the pds into a library
> >
> > <SNIPPAGE>
> >
> > Even a PDSE can fill up or have other errors (which from experience make
> > them a total loss, having to be deleted and redefined).
> >
> > So it turns out that some simple answers miss other issues. EXECIO
> returns
> > RC=20 regardless of the type of ABEND or error it got. There are other
> I/O
> > errors and/or storage errors that one can get while doing I/O -- but no
> > way that I've found, so far, that allow me to interrogate those messages
> > to know what to do.
> >
> Make the PDS into a z/OS UNIX directory.  Write to it with
> address SYSCALL instead of EXECIO.  Address SYSCALL returns
> very distinct error diagnostics.
> <snip>
>
> If that had been a valid option, I wouldn't have been having problems with
> ocopy to start with.
>
> Regards,
> Steve Thompson
>
> ----------------------------------------------------------------------
> For TSO-REXX subscribe / signoff / archive access instructions,
> send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
>



--
This is a test of the Emergency Broadcast System. If this had been an
actual emergency, do you really think we'd stick around to tell you?

Maranatha! <><
John McKown

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#333
Author: Adrian Stern
Date: Wed, 20 Feb 2013 16:28
54 lines
3173 bytes
Sorry - was this a batch job?

-----Original Message-----
From: TSO REXX Discussion List [mailto:TSO-REXX@VM.MARIST.EDU] On Behalf Of
Steve Thompson
Sent: den 20 februari 2013 16:02
To: TSO-REXX@VM.MARIST.EDU
Subject: Re: [TSO-REXX] EXECIO vs. Sx37

From:   Adrian Stern <adriangstern@GMAIL.COM>
Date:   02/20/2013 01:04 AM



Make the pds into a library

<SNIPPAGE>

What happens if the ABEND is NOT a Sx37? Well, I go do the IEBCOPY....
come back and redrive to get the S??? ABEND again. I want to do a better
job of error trapping and recovery than just blindly doing the compress.

I have tried using OUTTRAP and can't capture the message(s) so I can
interrogate them to know what is the correct course of action for recovery
(while I CAN do that for ocopy!!).

<SNIPPAGE>

That is not an option at this point. We discussed this at length and there
is a problem where PDSE does not allow us to truncate it like you can a
PDS (compress and then release the free space).

Meanwhile, your approach ignores the problem that I hit:  "redrive to get
the S??? ABEND again."

Even a PDSE can fill up or have other errors (which from experience make
them a total loss, having to be deleted and redefined).

So it turns out that some simple answers miss other issues. EXECIO returns
RC=20 regardless of the type of ABEND or error it got. There are other I/O
errors and/or storage errors that one can get while doing I/O -- but no
way that I've found, so far, that allow me to interrogate those messages
to know what to do.

Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Re: EXECIO vs. Sx37
#334
Author: Steve Thompson
Date: Wed, 20 Feb 2013 17:01
56 lines
3991 bytes
From:   John McKown <john.archie.mckown@GMAIL.COM>
Date:   02/20/2013 10:11 AM



Just for my own edification, are you open to replacing the EXECIO with
some
other, functionally equivalent, facility? I don't have one on hand, but it
appears to me that EXECIO is simply not designed to do what you want. So
maybe what is needed is a "superset EXECIO" function. EXECIO is not a REXX
language facility, per se. It is an "external" routine which is designed
to
work within REXX. Which means that we (OK, somebody) could run a
functionally equivalent routine in some compiled language.

Just a thought. I _might_ have the talent to write such a thing. But
getting the physical energy is another matter. I hate winter.

<SNIPPAGE>

John:

No, I'm not trying to replace EXECIO.

I'm trying to work within the language and the function/features provided.
I do not have the time nor have I been authorized to write a replacement
for the I/O functions of REXX in the MVS world. Had I been authorized for
that, I would do all the error recovery -- since I was, at one time, a
developer of MVS privileged code (SVCs, FRRs, SRBs, etc.) for different
ISVs and IBM. Come to think of it, referring to the COBOL thread on
IBM-Main, I could do the I/O entirely in COBOL (wouldn't be the first time
I dropped to that old workhorse to get something done FAST). ;-)

The thing I am writing is expected to be a fire and forget automatic tool
to solve a problem with collecting source that has been edited on
different platforms. The original tool was in Java, and it was *not*
mainframe based, yet it was trying to provide source to z/OS and then xfer
certain things to zVM. And it, as is typical of such development (in my
not so limited experience) did timings so that it could know when to issue
the next command and other things that made it unreliable.

I tried to fix it, but the amount of time to overhaul it, versus re-write
the functions in REXX... Management told me to "git er done". I am not far
enough along to use ISPF/PDF library management tools. I am having to get
data (source) from the Unix System Services side. And this is where I keep
having heartburn.

At this point, I am on the edge of discussing things that IBM considers
"internal/confidential" so I can't go into much more detail than this.

Regards,
Steve Thompson

----------------------------------------------------------------------
For TSO-REXX subscribe / signoff / archive access instructions,
send email to LISTSERV@VM.MARIST.EDU with the message: INFO TSO-REXX
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads