Operating System - OpenVMS
1822543 Members
2738 Online
109642 Solutions
New Discussion юеВ

PIPE command gives EXQUOTA error

 
SOLVED
Go to solution
Layne Burleson_1
Regular Advisor

PIPE command gives EXQUOTA error

VMS 7.3-2 on an Alpha DS10. I'm trying to do a PIPE SHO SYS|SEAR SYS$iNPUT TEST command from the system account and get the EXQUOTA message; however, if I do it from my personal account with the "exact" same quotas it works!

any ideas why it is failing from the system account?
12 REPLIES 12
Ian Miller.
Honored Contributor

Re: PIPE command gives EXQUOTA error

BYTLM would be favourite as a first guess.
You can watch your process quotas from another process or using Availability Manager
____________________
Purely Personal Opinion
Layne Burleson_1
Regular Advisor

Re: PIPE command gives EXQUOTA error

Hi Ian!

I don't have availability manager installed so I wrote a DCL procedure to monitor the quotas of a running process and it usually points me directly to the problem. However, these 2 accounts have the same quotas defined in sysuaf. How can one behave differently from the other?

I'll look at Availability Manager as well.
Volker Halle
Honored Contributor

Re: PIPE command gives EXQUOTA error

Layne,

BEFORE you issue the PIPE command under both user accounts, do the processes have the same remaining QUOTA values ?

Volker.
Layne Burleson_1
Regular Advisor

Re: PIPE command gives EXQUOTA error

Using f$getjpi I get the same unused values on both accounts for every quota before I issue the PIPE command.
Volker Halle
Honored Contributor

Re: PIPE command gives EXQUOTA error

Layne,

the SHOW SYSTEM output is certainly identical for those 2 users, isn't it ?!

How about logicals and/or symbols ? Privileges ?

There is one TIMA article (in Ask Compaq), which talks about MAXBUF possibly being too small as a reason for an unexplainable EXQUOTA error. Now MAXBUF is a system-wide parameter, but could any information being transferred between the main process and the subprocess created by PIPE be different in size for those 2 users ?

Volker.
Layne Burleson_1
Regular Advisor

Re: PIPE command gives EXQUOTA error

I can't find any difference in the output of sho sys. I can continuously bump up maxbuf and still get the same error - I had already tried that.

I'm sure there's something I've overlooked. I've checked the logicals, symbols and privs. Also, I verified that several accounts on this box work. The one that doesn't is the SYSTEM account which seems strange since he typically has more privs and quotas than any other account.

I set up my account to exactly match the system account in quotas and privs. My acct works - system doesn't.
Arch_Muthiah
Honored Contributor

Re: PIPE command gives EXQUOTA error

Hi,

$HELP/MESSAGE EXQUOTA

Explanation: An image could not execute because the process exceeded one of its resource quotas or limits.

This message may also occur if the size of a buffered I/O request exceeds the value of the SYSGEN parameter MAXBUF (def value for AlphaOVMS is 8192).

As we knew PIPE creates many subprocesses and uses extensive IOs using terminal (SYS$input and output and error devices).

The terminal device drivers is one of the examples of device drivers that perform buffered I/O. So I suspect MAXBUF which sets the maximum allowable size for any single buffered I/O packet.

So better we can quick check the system parameter MAXBUF. It needs to be set to a value larger than your buffer size, though exactly how much larger depends on the particular device you are issuing the I/O to.

For example, terminal devices can require an additional 112 bytes (or more).

Also you would also ensure the process has sufficient process BYTLM and BIOLM quota.

Archunan
Regards
Archie
Volker Halle
Honored Contributor

Re: PIPE command gives EXQUOTA error

Layne,

is there any diffference, if you use

$ PIPE/NOSYMBOL
$ PIPE/NOLOGICAL
$ PIPE/NOSYMBOL/NOLOGICAL

Volker.
Layne Burleson_1
Regular Advisor

Re: PIPE command gives EXQUOTA error

Volker,

I get the EXQUOTA on all.

Layne
Volker Halle
Honored Contributor
Solution

Re: PIPE command gives EXQUOTA error

Layne,

if you want to do further troubleshooting, you could try this:

$ set proc/priv=all
$ reply/enable
$ set audit/alarm/ena=create/class=device
$ set audit/alarm/ena=(process=creprc)
$ ANAL/SYS
SDA> IO LOAD
SDA> IO START TRACE/BIO

Then, from 2 other sessions (already logged in with your user and SYSTEM), issue the failing PIPE command

SDA> IO STOP TRACE
SDA> SET OUT/NOINDEX io.txt
SDA> IO SHOW TRACE/BIO
SDA> IO UNLOAD
SDA> EXIT

$ set audit/alarm/dis=create/class=device
$ set audit/alarm/dis=(process=creprc)

$ SET TERM/WID=132
$ SEA io.txt MBAxxx

PIPE creates a couple of mailboxes and subprocesses. Data (logicals, symbols) is copied via mailboxes to/from the subprocesses. IO trace would trace all buffered IO (which includes mailbox IO). The audit messages will tell you the mailbox names. If the EXQUOTA problem is related to mailbox issues, you might find an error status in the last column (Media) of the IO trace output.

Volker.
Antoniov.
Honored Contributor

Re: PIPE command gives EXQUOTA error

Hi Layne,
EXQUOTA is too generic error message.
Here there is an ATW (Ask to Wizard) about various cause:http://h71000.www7.hp.com/wizard/wiz_1558.html
Did you try follow command?
$ SHO SYS|SEAR SYS$PIPE TEST
It should be apparently the same of your command but it's slightly different.

Antonio Vigliotti

Antonio Maria Vigliotti
Layne Burleson_1
Regular Advisor

Re: PIPE command gives EXQUOTA error

I discovered that unlike maxdetach, the prclm quota does not use "0" as unlimited. The system account was set to 0 and because (for reasons unknown) the pql_mprclm was set to 0, the pipe command could not create subprocesses.

Many thanks to those that offered help!

Layne