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

Reply via email to