Q: Does anyone know of
any intrinsic (or any other method) that will tell me if a spoolfile is a
stdlist or not?
A: Tracy Pierce replied:
You can use
;seleq=[filedes=$stdlist] in any spoolf or listspf command.
Q: (in the same vein) Is
there a way to determine both the "job card" and "streamed
by" information for a job?
A: Use the CI function,
jinfo. See HELP jinfo for a complete list of parameters.
Q: We have a 989-250 and
I wanted add a single processor to a 989-350. HP is telling me I have to add
two processors and go to a 989-450 instead. Has anyone had to do this? I
thought I had seen 989-350 written on HP documents like performance numbers and
model numbers.
A: Donna Garverick replied:
HP is requiring
multiprocessor systems to have an even count of processors these days. It is
change from days of yore.
Q: We are trying to
implement different job queues on our system. However, there are several jobs
and command files spread around thad redefine LIMITs for the job. We would like
those jobs and command file to LIMIT only HPSYSJOBQ, but leave our new private
jobque intact, as well as not touch the global job limit.
We have been trying to
define an udc that redefines LIMIT as
LIMIT n,m;JOBQ=HPSYSJOBQ
calling XEQ LIMIT. Alas,
that doesn't work, as XEQ only works for files. Any ideas?
A: Tad Bochan and John
Wolff replied:
In your UDC named LIMIT,
just execute the command LIMIT without the XEQ. UDC's are searched before the
CI commands in a forward manner (User, Account, System, and then CI) so it will
not be recursive (unless you use that option). We do something similar for RUN
and PURGELINK.
Q: Does anyone have any
suggestions how I might programmatically detect if an AutoRAID (12H) was
installed on a particular HP3000.
A: Bill Cadier replied:
You could
programmatically run /opt/hparray/bin/arrayscan directing output to a file and
then check the contents of the file for something that looks like
"ControllerSN: [whatever] PairSN: [whatever] BackPlaneSN: [whatever]
I haven't tried this but
it should work.
Michael Anderson
verified it worked and even suggested a command file:
The command file
RAIDCHK, run on a system without RAID
MANAGER.SYS>raidchk
status: No AutoRAID controllers found
The same command file
run on a system with RAID
:raidchk
2 AutoRAID controllers found
The RAIDCHK command
file:
#
#
Find AutoRAID controllers
#
run /opt/hparray/bin/arrayscan > tempio
fgrep "-c Success" <
tempio > tempio2
input xcnt < tempio2
setvar controller_cnt !xcnt
if !controller_cnt = 0 then
fgrep "status" < tempio
else
echo !controller_cnt AutoRAID controllers found
endif
Q: Filename: ATOINPUT
BAD VARIABLE BLOCK STRUCTURE
(FSERR 105)
ATOINPUT is a message
file (MSG). Following a system crash, we encounter this error. Is this file
hosed or can we recover it?
A: The consensus was
that the highly techical termed "hosed" pretty much describes the
situation. Several people thought that under some circumstances it might be
possible to recover some of the entries via FCOPY, but no one seemed to have
had any actual successes to report. [Editor's note: my own experience confirms
"hosed".]
Q: I want to get a line
count from a particular file and compare to a value setup as a user defined
variable. Could someone tell me how to accomplish this?
A: Jonathan Backus
replied:
finfo ('filename','EOF')
Mark Bixby and Joseph
Rosenblatt added a word of caution:
finfo won't give the
results you expect if the file is an ASCII bytestream file. For a bytestream
file, finfo(eof) returns the number of bytes in the file. Whereas the POSIX wc
program will serially read the file and return the number of lines (delimited
by \n), words, and bytes. For example,
:calc
finfo('/etc/profile','eof')
4116, $1014, %10024
:xeq wc.hpbin.sys
/etc/profile
110
637 4116 /etc/profile
Q: I need to determine
if we have any service/listener running on a series of IP ports. Does anyone
know how to get a list of the currently active/used IP ports on the HP3000?
A: Michael Anderson and
Jeff Kell replied:
Run SOCKINFO.NET.SYS.
This gives the programs that have sockets open. You can type 'p' and enter a
PIN# to get a given process' sockets, and then 's' and socket # to get detailed
info.
What you probably want
is to use the 'c' (Called sockets) command. This will show you which ports are
being "listened to" i.e., server processes
Q: How do I kill a pin
when the Father process (job) no longer exists?
A: Look into the command
ABORTPROC.
Q: I have an N-class
system with two NICs. What I want is my HP e3000 to act like a router between
the two networks but cannot seem to get it to work. Can I do this?
A: Bruce Toback replied:
You need to enable Store
and Forward. The path in NMMGR is
NETXPORT.NI.<networkname>.PROTOCOL.IP
You'll find a place to
configure the number of store and forward buffers. Set this to some nonzero
number (32 should be more than enough if the two NICs are the same speed) on
both interfaces. You should get routing behavior.
Q: I would like to be
able to print/display the input file of a waiting job. I can find the file (I#####.IN.HPSPOOL), but
I can't print it (I get "PRIVILEGED FILE VIOLATION (FSERR 45)"). Is there anyway to do
this in MPE?
A: Michael Berkowitz and
Mark Bixby replied:
Use the PRINTSPF
command. Note that !JOB statements are not contained in input spoolfiles. The
data from parsed !JOB statements is stored in various system tables.
Q: How can determine the
session number of a process from its PIN?
A: Keven Miller replied:
Given a pin you can
SHOWPROC pin=### and see the session number.
John Clogg suggested
another way:
There is also the PINFO
function: SETVAR SESSNUM PINFO(pin,"jobnum")
Q: Is there a way to
capture the number of jobs that are running in a job queue?
A: Mike Hornsby replied:
:listjobq
JOBQ LIMIT EXEC
TOTAL
HPSYSJQ 3500 1
1
MYJOBQ 100 1
1
MJQ 10 1
2
Of course, if you want
to set variables, you can just create a command file to parse the output of
listjobq.
Q: Without having to go
to a backup tape, is it possible to retrieve the following files from another
means like a previous SLT tape or an Install/PowerPatch tape?
sysgen> tape
**error** Can't open file AICAT000.INSTALL.SYS
NONEXISTENT PERMANENT FILE (FSERR 52)
**error** Can't open file AUTOINST.INSTALL.SYS
NONEXISTENT PERMANENT FILE (FSERR 52)
A: Doug Werth replied:
You should be able to
restore these from a FOS tape.
D. Brinson suggested
another option:
Use CHECKSLT option 5 on
a recent SLT to restore the files.
Q: I am trying to
configure an HP-PB 100BaseTX card in sysgen. The part no. is A345-60001 but
sysgen needs the HP product id. Does anyone have the configuration parameters
for this card?
A: Gilles Schipper
replied:
You don't need to
configure this device in sysgen. You only need to reference its hardware path
when configuring with NMMGR.
Q: We are adding a 4th
processor to our HP e3000 N4000 and currently have 6 Gb of memory. Does anybody
know if I need to add more memory to support the new processor?
A: John Clogg replied:
No, nobody knows,
despite any claims to the contrary. The answer depends entirely on your
environment; i.e. how many jobs & sessions you typically run, and what they
are doing. I would recommend an evaluation of your present environment using
Glance or the Lund tools or the services of a performance consultant. If you
are experiencing any memory pressure now, it will get worse with an additional
processor. If you are not seeing memory pressure, then it is less certain that
you will or will not need more memory.
An unidentified list
member noted this additional word of caution:
Keep in mind that this
will also likely change the model number that the HP 3000 reports to
applications. This could blow third-party software dead because some of them
include the model number in the license-enabling hash algorithm. For example,
our system's model number went from a 989-300 to 989-400 when we added a
processor. Be sure to check in with your software providers before adding the
processor.
Q: I am trying to add a
new dataset and have a question. When I try to define the item "SSN",
I am using X9 as my definition. I get the message that an "X-Type must
have an even number of total bytes". I am not sure what the SubItemCount
is, but I assumed it was the order of my field in the dataset (which should be
1st). Can anyone clear this up for me? I know that my definition (SubItemCount
* SubItemLength) must be even, but I am not sure how to define a "PIC
X(9)" field in my COBOL progam to match this field in my dataset and get
an even number.
A: Denys Beauchemin,
Robert Mills and Tom Brandt replied:
You are going to have to
define SSN as a 10 or 12 character field. Use 10 for 9 with a blank or 12 for 9
plus the 2 dashes and a trailing blank.
The subitemcount is
basically an array construct: address
4X10 gives you a 40 character storage space where you can reference
address(1)..address(4) as independent values of X10 each in Query and other
such things. However, think of the data being really stored as X40. For
characters (X, U, etc) the product of aXb must be even (5X6 is valid, 5X5 is not.) In your case 1X9 is not valid.
Q: I know that sales
will end 10/03 and support will end 12/06. When is MPE/iX 7.5 due out? Is that
going to be the last release from HP? Should I presume that patches would be
generated through EOL?
A: Jeff Vance replied:
Current plans are for
MPE/iX 7.5 to be released this summer.
MPE/iX may be the last
release. A lot depends on customer wishes. We believe that many customers will
not update, even to 7.5. We are still discussing if 7.5 will be a
"push" release, and if it will be shipped with all new system sales.
Patches will be
generated through EOL.
With tongue firmly in
cheek, Tracy Johnson noted "if they skip versions and roll forward to a
Final Version 9, then the term MPE/iX will really mean 'IX'". Alan Yeo, in
the same vein added "does that mean if we all go back to calling it MPE/XL
we can get them to continue developing right up to version 40"?