Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ucbvax!YALE.ARPA!LEICHTER-JERRY From: LEICHTER-JERRY@YALE.ARPA.UUCP Newsgroups: mod.computers.vax Subject: Re: LIB$SPAWN Problem Message-ID: <8703050131.AA15243@ucbvax.Berkeley.EDU> Date: Wed, 4-Mar-87 20:31:31 EST Article-I.D.: ucbvax.8703050131.AA15243 Posted: Wed Mar 4 20:31:31 1987 Date-Received: Fri, 6-Mar-87 05:43:48 EST Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: Distribution: world Organization: The ARPA Internet Lines: 30 Approved: info-vax@sri-kl.arpa We are running a program which SPAWNS commands frequently. Most of the time, these commands work properly, but every once in a while, the LIB$SPAWN will fail. The return status for LIB$SPAWN is SS$_NOIOCHAN. I realize that LIB$SPAWN needs to assign an I/O channel to create a mailbox but I can't figure out why it can't find one. I've checked for files which have been left open earlier in the program but no luck.... After I get this error, I open an existing file successfully, am unable to create an output file, and from then on, cannot even open any existing files. What version of VMS are you running? (I don't recall any particular bug fixes for any problem related to this one, but that's pretty fundamental information for tracking things down.) At the time of the SPAWN that fails, have other SPAWN's finished already, or are they still out there executing? Every still-active SPAWN'ed process will still be costing you an I/O channel.... In addition, note that the open file quota is pooled among all the processes in a job. Hence, if you have a still- active subprocess that has many files open, it can prevent you from opening any more. Unfortunately, it's pretty easy to write programs that "lose" channels this way, and pretty hard to figure out where they are going. If all else fails, ANALYZE/SYSTEM lets you display all the channels in use by a process. Of course, that requires mucho privilege (CMKRNL, at least). A "tame" version of ANALYZE/SYSTEM - which would only let you look at processes you otherwise have access rights to - would be nice to have.... -- Jerry -------