I find this all mightily interesting.

Patrick O'Keefe wrote:
<snip>
I'm not sure why we are not seeing this error.  Most of our application
userids do not have an OMVS segment.  Does the OMVS segment for a default
UID prevent this, or does it have to be in the application's actual
profile?

The default OMVS UID works very well for this; in fact that's pretty much why it exists.

   ERROR DESCRIPTION:
   The Resolver code EZBRESRV does a BPX1SPM call.  If this fails,
   the address space is not dubbed.  ...

Would we possibly be having this and not know it?  This sounds like it
should be pretty obvious - that TCP/IP stuff would fail.  But what do
I know of "dubbing"?  Could this happen silently and without obvious
fallout?

It is silent and unobvious as long as it's working. When it isn't working, it is neither silent nor obvious.

As it happens, my ace security team *deleted* the default OMVS UID two Tuesdays ago at 11 in the morning. (I have an idea why, but the explanation would be somewhat politically incorrect.) Although the first victim was an application that happens to process EDI orders from our 3,000 retail outlets, nobody noticed that it wasn't working 'til I was on my way home. After quick conversation with the developers, mostly "we didn't change anything" (and I believed them), I started looking.

The *only* evidence was a message in the application's stderr at every transaction helpfully telling me that a select() took an EINVAL error on the first function argument. That argument is a number of sockets and has been unchanged from the day the code was written.

I won't say how long it took me to get to the missing UID which caused the under-the-covers dub to fail but I will note that it was the first two-beer problem I've shot in a while.

My newly and painfully gained understanding of what happens is:

- When an MVS task invokes a z/OS UNIX service, it is automatically dubbed (i.e. a thread is created in the z/OS UNIX kernel).

- If this process fails, the failure is reflected back to the caller of that service, in my case the select().

- I don't know it, but I suspect the failure will be something on the order of "invalid argument".

The scars are healing, but slowly.

Bob

----------------------------------------------------------------------
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