Dang, Patrick, how did I miss the connection? Once upon a time, JES2 undertook to manage a newfangled print gismo the same way they always had: start, stop, ship data, handle glitches, the whole enchilada. This newly bred puppy, the 3800, proved to be famously ill mannered. It not only laid waste to the surrounding landscape, it got its master in serious trouble with the whole neighborhood. At a time when 'FSS' was still just a euphemism for something vulgar, JES2 was desperate to impose some order on the 3800 chaos.
For one particularly troublesome set of circumstances, a short term maneuver was proposed: 'throw up our programmatic hands and start over'. The problem was how to 'start over' in the middle of some very complex code? Someone noticed that there was already a robust error handling routine that got control in case of JES2 main task abend. This routine cleaned up the 3800 tangle and returned to a known and workable restart point. Trouble was, the error condition that required 'recovery' was often no more than a printer return code that JES2 didn't know what to do with. So the ingenious solution was to branch deliberately to a specific literal string containing a conspicuous 'error message'. The resulting S0C1 would be recognized as an intentional punt (US football term), normal recovery would be invoked, and life would go on. Unfortunately, somewhere between conception, testing, and actual release--come on, did nobody see this before PTF GA?--the intended literal got (re)rendered as an EBCDIC string whose hex beginning fatally resembled a decimal OP code. So instead of S0C1, JES2 took a S0C7, which the recovery routine was not expecting. JES2 died on the spot, and sysprogs all over the world scratched their heads in disbelief. Now that really was funny. . . JO.Skip Robinson Southern California Edison Company Electric Dragon Team Paddler SHARE MVS Program Co-Manager 626-302-7535 Office 323-715-0595 Mobile [EMAIL PROTECTED] Patrick O'Keefe <[EMAIL PROTECTED] AMU.NET> To Sent by: IBM IBM-MAIN@BAMA.UA.EDU Mainframe cc Discussion List <[EMAIL PROTECTED] Subject .EDU> Re: "action" in UK33496 04/20/2008 08:06 PM Please respond to IBM Mainframe Discussion List <[EMAIL PROTECTED] .EDU> On Sun, 20 Apr 2008 18:11:45 -0700, Skip Robinson <[EMAIL PROTECTED]> wrote: >... >There was a note of caution that I found almost funny: the new OP code >would not cause a problem for any program *unless* that program were >depending on the OP code *not* to be valid. Where's my S0C1? I need my >S0C1! After all these years in the business, I would not bet the farm on >there being no such program. >... I remember seeing such a program sometime within the last 15 years. I don't remember what "character string" used to create the S0C1, but I remember thinking that some day it would be a valid opcode and there was going to be some very unanticipated behavior in that program. Sheesh! Everybody knows you're supposed to EX and EX in such circumstances, not execute some clever word. You need a more intuitive, self-explanatory abend like S0C3 to aid your debugging. :-) Pat O'Keefe ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html