Robin wrote:
> What possible recovery do you think your REXX program can do.
> Suppose a D37 abend occurs. That happens not because of any error in your
> program. It is not even any error in the program performing the I/O. Such
an
> error is in the design of the whole application wherein the number of
> members being created exceeds what was anticipated by the designer.
Recovery
> from such is not the responsibility of the program but the application
> designer. I suggest this is the case in any Abend.
That's silly. First, a friendly error is more useful than "Something ran out
of space". Second, depending on what the Rexx program was doing, it might
need to unwind stuff, or at least tell the user how far it got, or that it
didn't do any damage yet.
Not to pick on you, Robin, but z/OS user-hostile behavior is not a good
thing. There are far too many places where diagnosing a simple and common
problem requires trolling through job or other logs, rather than receiving a
coherent and meaningful message somewhere trivially accessible.
I assume this behavior all goes back to OS/360, where these errors were the
best it could produce on tiny, slow machines; this ain't 1964 any more. Some
of these problems may in fact be impractical to fix because there are four
different commercial products (two from Broadcom, one from BMC, and one from
IBM) dedicated to helping users with them, but that's no excuse for anyone
writing new code not to think about failure modes and make them as easy to
diagnose and fix as possible.
z/OS isn't the only offender here, of course-cf. the infamous "The operation
failed" in Outlook (with antecedent for "the"), or (15 years ago, hopefully
since fixed) Postgres startup, which provided NO data if it failed: you had
to hack the startup script to get it to emit errors.
I could rant on this for hours but I'll stop now, ending with my
gross-but-not-inaccurate generalization:
Applications programmers think about how the code will work.
Systems programmers think about how the code will fail.
Feel free to change the A/S words to other, less kind delineations.
...phsiii (it must be Monday)