Design 3000 Plus
Sponsor Message

     

Hidden Value details commands and procedures in MPE that can improve your productivity with HP 3000 systems. Get a free NewsWire HP 3000 “3000 for 2000” cap — submit your MPE tip directly to us here at the NewsWire. Send your tips to editor@3000newswire.com, or fax them to 512.331.3807.

Edited by John Burke

Does IMAGE support “jumbo” master sets? Is it safe to use? Do all DBUTIL functions (purge, erase, etc.) support jumbo datasets?

Joe Taylor replies:
We are an AMISYS site and our SERVICE-A dataset is a jumbo dataset. It became a jumbo dataset last year. The current capacity is 40,901,453 with 31,576,140 entries. This equates to 4.3 Gb spread across three datasets. We have not had any problems in its use.

Stan Sieler, Rene Woc and Jerry Fochtman all note:
Jumbos (masters and details) were introduced sometime during the life of 5.0 and the DBUTIL that shipped with the introduction of jumbos was fully functional on jumbos. As a practical matter, no one on 5.5 or 6.0 needs to worry.

B T Vikram Kumar notes:
The version of IMAGE that first contained support for jumbo datasets was released with IMAGE version C.06.05 (on 5.0). So all versions greater than or equal to C.06.05 will have this feature.

We want to use a 12H AutoRAID on our system but believe that our operating system is not current enough to support it. We are running MPE 5.5 and think we need 6.0.

Lee Gunter replies:
MPE/iX 6.0, plus patches MPEKXU3 and ARMKXW5, are required. It will not be supported on 5.5.

We’re converting from our HP 3000 “legacy” applications to an ERP real soon now. Management has decreed that the HP 3000 apps must still be available for lookups, but that nobody should be able to enter new, or modify existing, data. Should I do the simplest thing and change all of the databases so that the write class list is empty?

Doug Werth replies:
One way to do this is to write a program in the language of your choice that does a DBOPEN followed by a DBLOCK of each database (this will require MR capability). Then the program goes into an infinite loop calling the PAUSE intrinsic. Any program that tries to update the database will fail to achieve a lock, rendering the databases read-only. Programs that call conditional locks will come back immediately with a failed lock. Unconditional locks will hang.

This has been a very successful solution I have used on systems where a duplicate copy of the databases is kept for reporting and/or shadowing using IMAGE log files.

Steve Dirickson agrees with the poster of the question:
Since very few developers write their apps to check the subsystem write flag you can set with DBUTIL, changing the classes is your best bet. Make sure you do so by changing the current M/W classes to R/R so the existing passwords will still work for DBOPEN, and only actual put/update/delete operations will fail.

The “big picture:” If protection is required FOR the database, that protection should reside IN the database if at all possible. As mentioned, this is easy with IMAGE.

Since the Posix interface was added, the requirements for renaming files have been relaxed. But how do lockwords fit in? It appears you still must be the creator to add a lockword (I’m on MPE/iX 5.5 PP7). And, if a file has a lockword, it appears you cannot use it with the Posix syntax.

HP’s Jeff Vance replies:
Your example you sent logged on as MGR.TEST and you (presumably) have AM cap. True, you are not the owner of the file, but with Posix the rules for renaming have changed. Prior to Posix you had to be the owner no matter what — even an SM user could not rename a file that she did not create. With Posix, you need the following to be able to rename a file:

• CD permission in the target directory (group/account/dir). CD means “create directory entries”, which means you can add objects (files, groups, dirs) under the target directory, and

• DD permission in the file’s current directory (or group/acct). DD means “delete directory entries,” which means you can delete objects (files, dirs) under the directory in question.

• Probably need SF (save file) capability too.

• And I assume there are special rules for the file owner who does not have CD and/or DD but can still rename the file (at least within same group?)

So AM should be able to rename all files that are in her account as long as the file’s GID (“account name”) matches the GID of the AM user.

It appears that lockwords matter in our RENAME logic. True they are not a POSIX concept but, the creator constraint has been removed for all files in MPE or POSIX syntax. A lockword can be specified inline in MPE filename syntax; e.g.
print file/lockwd

It is ambiguous to specify an inline lockword using Posix filename syntax, e.g. print ../file/lockwd

Due to this conflict, and the fact that Posix file security does not include the concept of a lockword, we decided to not accept lockwords via the Posix syntax and semantics. It did not make sense to us to support lockword prompting and inline specification for MPE syntax, but support only lockword prompting in POSIX syntax.

Is there a way to have the HP 3000 show up in Windows Explorer as a drive? I was thinking that because Posix is a part of the OS now, it might be possible.

Peter Osborne, Barry Lake, Denys Beauchemin, Mark Mitterlehner and Lars Appel all reply:
Yep. It’s called Samba/iX. See http://jazz.external.hp.c om/src/samba for details.

Lars adds:
Let me add, in regard to the network neighborhood, that it seems to be helpful in many cases to configure the Samba/iX server to use WINS for NetBIOS name resolution (and browsing support?).
If your PC network already uses an existing WINS server, you can tell Samba in smb.conf to also register with it (see “wins server=”). If your PC network does not use WINS so far, you might tell Samba to act as such (see “wins support=”) and have all your PCs reference it. Windows NT seems to be less tricky with the NetHood than Windows 95.

How can I get a “count” of files satisfying specific naming conventions?

Robert Schlosser, Tony Summers, Richard Trapp, Tom Renz and Jim Killam all reply with some variation on:
listfile fileset,6 > list6
echo ![finfo(“list6”,”EOF”)]

Jeff Kell ventured into Posix land with:
Using the Posix shell,
ls -l|wc -l
or callci “listf,6”|wc -l

My personal favorite, however, is my own:
If you feel like living dangerously, PURGE fileset and then respond NO! Quickly!

If you use a fileset expression, and even if only one file qualifies, it will still ask whether you want to continue with the purge. Unfortunately, the PURGE command does not support CIOR so creating a command file to protect you from yourself is not an option.

We have two HP 3000s on our network: a 928 for business purposes and a 918 that is a development and backup machine. Both 3000s are on UPSs, but our networking equipment and DTCs are not. When we lose power, the DTCs will power up and load up their configuration from one of the HP 3000s. How can I control to which machine the DTCs connect? Right now it is a crapshoot. Sometimes the DTC will connect up to the 928 (desirable) and sometimes it connects to the 918 (undesirable). I need a way to know that when a DTC powers up, it will be forced to connect to the 928. We are not currently using the DTC Manager PC-based software. We are downloading the configurations from NMMGR.

Curt Brimacomb and Forrest Smith reply:
Sounds like you have the DTCs configured on both machines. If you want to just have them come up on one machine then delete the DTCs from the 918. If you need them back in an emergency you can restore your NMCONFIG file from the 928.

[Editor’s note: A similar question was asked some time ago and an interesting suggestion was to check the box “Are you using OpenView DTC Manager?,” “Y” within NMMGR on all machines except the one you want to have manage the DTCs. This way, you can still “define” for MPE’s purposes your DTCs on the other machines, but they will not respond to a DTC’s request for download.]

I’m looking for a way to completely erase data from disks. By this, I mean there is no way for the data to be recovered and the disk is seen by any system as empty, a completely clean slate.

Steve Cole replies:
The “formatvol” command within the volutil utility should reformat disks that are not mounted within a volume_set. The command does take a while to complete.

To which Gilles Schipper adds:
And, don’t interrupt the “formatvol” command — unless you really want the disk to be inaccessible. Depending upon the size and model of disk, the command could take up to two or three hours to complete.

Steve Cole adds:
If this level of cleanup is not necessary, then simply purging the files and/or groups and/or accounts will make it very difficult (if not impossible) to recover any of the data.
Paul Christidis contributes:

The same question was posed a few years back. One of the suggestions at that time was to place the drive into a special device class and then build on it a dummy database with a large enough capacity to take up the entire drive. This relied on the fact that DBUTIL would initialize the entire dataset to binary zeroes as part of the ‘building’ process.

I have a problem with a 979. It has a Multi-Function Card that has a built-in modem. Periodically this modem hangs and needs to be reset in order to dial in to it from the outside. The current work-around is to reboot the system. This is not practical, especially if we have a large number of users on the system. Can the modem be reset via an MPE command and/or utility to reset the built-in modem?

Gilles Schipper and Gary Paveza reply:
You need to go into SYSDIAG, as follows:
:SYSDIAG
consolan pdev=10/4/0.1 section=2(23)

The pdev represents the hardware path of the LAN/serial IO portion of the mfio card. For a 979, that should be 10/4/0.1. For a 9x8, it should be 56/56.

Unfortunately, you will need an HP SUPLICENS password to use consolan — as absurd as that may be.

I have a process that logs its activity to a file. Easy enough. Just:

File logfile=log.group.account,old
Echo Some log record>>*logfile

Worked like a charm during development. Then came training day. Lots of these jobs hitting the queue all at once. Then we noticed (I should say to my embarrassment someone else noticed) that the log record for a particular event was not there. I checked the job, and no error message from the echo command (no errors at all really). Still, the record was not there. What do I do to make it appear?

Mark Bixby, Tom Renz and Tracy Pierce all reply:
I like to use ;SHR;GMULTI when appending to log files from possibly multiple jobs at possibly the same time.

And, ACC=APPEND does not hurt either.

Is there a quick/easy way of extracting (i.e. copying) data from a VAM (message) file without the copy process stopping at the last record waiting for additional records to hit the VAM file? Aborting the session results in losing the last record in the copy.

Jack Bailie replies:
This command file copies a VAM file to a flat file and preserves the data in the VAM file. I use it daily.

purge ut7872x > $null
build ut7872x;rec=-6104,1,v,ascii;disc=1000;nocctl
file ut7872x;acc=append
file ut7872=ut7872.fdatab20;shr;COPY
fcopy from=*ut7872;to=*ut7872x
reset ut7872
reset ut7872x

I have a DTC16 that I need to find the MAC address of. How does one go about obtaining the address?

Richard Umberger replies:
Assuming this is not already configured on your network and the label is missing, connect a terminal to the diagnostics port on the DTC16. Power cycle the DTC and access the diagnostics screen to get the 802.3, multicast and IP addresses.

I just discovered that a database that is used infrequently is missing its root file. I can not find a copy on any backup tape. I do have a good schema. Is there anything I can do to recover this database?

Mike Hornsby and Rene Woc reply:
You can replace the root file if you are careful. If you have a schema that matches the data sets EXACTLY then do the following:

1. Create a separate group called dbtemp, and home yourself to that group then,
file dbstext=dbschema
run dbschema.pub.sys;parm=1
run dbutil.pub.sys
create dbname
Now you should have an empty data base with a good root file, but in the wrong group.

2. Store the root file to tape

3. Restore the root file using the group= option

At this point you should have a good root file in the correct group.

As a final point: Like running buldacct to get an alternative directory source in the full backup, it is also a good idea to run Adager or some other utility to create a known good schema on a periodic basis. 


Copyright The 3000 NewsWire. All rights reserved.