December 11, 2009
A Quick Cheat Sheet for Reloads
When a 3000 drive goes dead, especially after a power outage, it often has to be reloaded. Dave Powell of MM Fab had his Logical Device 2 (ldev2) fail on him in such an instance. He asked for a cheat sheet on reloading a volume, something that our Homesteading Editor Gilles Schipper was quick to provide to Powell.
By Gilles Schipper
Assuming your backup includes the ;directory option (you’ve already said it includes SLT),
1. Boot from alternate path and choose INSTALL (assuming alternate path is your tape drive)
2. After INSTALL completes, boot from primary path and perform START NORECOVERY.
3. Use VOLUTIL to add ldev 2 to MPEXL_SYSTEM_VOLUME_SET.
4. Restore directory from backup (:restore *t;;directory)
5. openq lp
6. Perform a full restore with the following commands
:file t;dev=7(?)
:restore *t;/;keep;show=offline;olddate;create;partdb;progress=5 7.
Perform START NORECOVERY
I would suggest setting permanent and transient space each equal to 100 percent on ldev 2. The 75 percent default on ldev 1 is fine as long as you don’t need the space. And if you did, your solution shouldn’t really be trying to squeeze the little extra you’d get by increasing the default maximum limits.
The reason for limiting ldev1 to 75 percent is to minimize the otherwise already heavy traffic on ldev 1, since the system directory must reside there, as well as many other high traffic “system” files.
You won't want to omit the ;CREATE and ;PARTDB options from the restore command. Doing so will certainly get the job done -- but perhaps not to your satisfaction. If any file that exists on your backup was created by a user that no longer exists, that file (or files) will NOT be restored.
Similarly, if you omit the ;PARTDB option, any file that comprises a TurboIMAGE database whose corresponding root file does not exist, will also not be restored.
I suppose it may be a matter of personal preference, but I would rather have all files that existed on my disks prior to disk crash also exist after the post disk-crash RELOAD. I could then easily choose to re-delete the users that created those files -- as well as the files themselves.
Another reason why the ;SHOW=OFFLINE option is suggested is so that one can quickly see the users that were re-created as the result of the ;CREATE option. Purging the “orphan” datasets would be slightly more difficult, since they don’t so easily stand out on the stdlist.
Finally, it’s critical that a second START NORECOVERY be performed. Otherwise, you cannot successfully start up your network.
Posted by Ron Seybold at 03:22 PM in Hidden Value, Homesteading | Permalink | Comments (0)
Get e-mail notice when the NewsWire blog gets a new entry. Just say "Blog Me" in a message to editor@3000newswire.com.
December 04, 2009
Securing 3000 FTP: Clients yes, servers no
When long-time 3000 customer Eveready Insurance asked if Secure FTP (SFTP) is available for the server, the short answer was yes. And no.
A client version of the software to secure file transfers has been available for the 3000 for some time. What the 3000 lacks for now is a secure FTP server module. This means that the HP 3000 must initiate each secure file transfer process.
HP's response center engineer Cathlene McRae has pointed customers to a 2008 HP white paper on the subject of securing 3000 file transfers, a document which is honest about how much MPE's FTP supports industry standards. McRae admitted that MPE/iX doesn't provide a version of SFTP in addition to the 3000's regular FTP/iX. Once the invent3k public access development server accounts are restored for the community -- a project OpenMPE has been working on since September -- a true SFTP server module might proceed toward a release. A volunteer for that project would have to step up, too.
HP's white paper reports that it created a script called crypt that can secure 3000 transfers. The good news is that even though HP has closed down its Jazz server, crypt is still available to the community. Speedware is hosting crypt (a tarball that can be downloaded) as part of its collection of Jazz programs.
HP's paper says in part:
HP has designed a script which will allow FTP/iX users to transfer files securely from MPE/iX to remote systems running HP-UX, Linux, MPE/iX etc. The script provides an option to encrypt files prior to the transfer. Depending on this “encrypt” option and a few other considerations, the file will be encrypted using the POSIX CRYPT utility, before it is transferred via FTP/iX.
Brian Edminster of Applied Technologies has explained the differences between full SFTP support and the state of secure transfers using MPE/iX 7.5. In a report from earlier this year, Edminster said "while files can be put to or retrived from other systems, since only the SFTP client is available, the 3000 must originate the transaction. This can make for some process redesigns if your existing applications are used to your 3000 being the ‘server’."
That SFTP server module -- the element that prevents 3000 managers from saying the system supports SFTP -- is in a double limbo this month. A first pass at creating a port of OpenSSH for MPE/iX is included in the invent3k files of Ken Hirsch. But invent3k, like the Contributed Software Library and the Jazz programs, is still being set up by OpenMPE. Speedware and Client Systems haven't signed up to host invent3k. OpenMPE's mission remains keeping the 3000 up to date, once these porting projects become available to the community once again.
Posted by Ron Seybold at 04:20 PM in Hidden Value, Homesteading, News Outta HP, Web Resources | Permalink | Comments (0)
November 17, 2009
HP's 3000 legacy includes A, N-Class details
In our recent report on the seventh anniversary of HP's 3000 exit notice, we referred to a shining moment for the community. We captured the first-ever introduction of A-Class and N-Class HP 3000s on February 7, 2001. Although HP introduced its final generation of 3000s over and over for the next six months, that spring morning showed off the new design in extensive detail.
Product Manager Dave Snow is introduced by General Manager Winston Prather at the e3000 Solutions Symposium in our video, waltzing down the meeting room's aisle with an A-Class server under his arm. He's borrowed one of the few that were testing-ready that day from HP's MPE/iX labs. In a separate movie of 5 minutes, Snow leads a tour of the advantages the new design still offers over the 9x9 and 99x 3000s. HP pulled the covers and cabinet doors off to show internal hardware design.
HP hasn't manufactured these N- and A-Class models for more than six years, but they remain popular among community members who need to upgrade 3000s. They were built to a standard of reliability and durability that gives the computers a longer lifespan than many business servers. It's not easy to find this video's level of configuration detail here in 2009, even while the servers continue to be bought and sold
Snow discusses the length of that 3000 lifespan as he starts his advantages tour. The term of useful service of an HP 3000 gave customers an advantage in the short term -- but some say that that same service level contributed to HP's departure from your community.
Snow points to a missing future to start his tour. During his introduction he notes that "we do have a future beyond today's A- and N-Class server, in large part because we have a lot to talk about today." At least at the moment of the computer's introduction, HP seems to be intent on driving forward its 3000 business with technology advances. It was about to start reaping the years of technical work sowed to bring a 28-year-old server into the most current business server design.
3000s didn't wear out or fall so far behind computing needs as soon as other HP solutions. Useful life could easily be 10 years, a rate of churn that didn't fit with HP's new business model during 2001.
Many of the improvements in this ultimate HP 3000 came at the MFIO and processor board level. The servers used networking and peripheral support that provided speed and value that the server never had before 2001. The advantage tour video was shown to a room of 100 developers, 3000 partners and customers. HP hadn't changed the 3000 this much since its PA-RISC rollouts of the late 1980s.
There were to be even more striking changes to a 3000 customer's solutions and future about nine months away from that 2001 morning. By some estimates, judging from the first customer ship dates, these servers had only six months to contribute to division revenues before HP pulled its 3000 plug. No one can be certain how they might have succeeded for a customer base running 3000s 8-10 years old, systems hungry for power and cooling and falling short of CPU needs.
But those same distinctions matter today, even after more than eight years, to community members who need an upgrade before they finish using their 3000s. HP will finish its 3000 business before commerce ends around the A- and N-Class. Waiting for all these years to acquire one delivers a massive discount by now, in addition to the technical advantages.
Posted by Ron Seybold at 12:33 PM in Hidden Value, History, Homesteading, News Outta HP, Podcasts | Permalink | Comments (0)
November 13, 2009
Command the 3000's Service General
It's a powerful part of your HP 3000 that runs whenever the server is plugged in. The General Service Processor (GSP) is the maintenance control console that commands the server to "reboot, do memory dumps and even fully power down the HP 3000," reports consultant and outsource support expert Craig Lalley of EchoTech.
Lalley has been on the hunt for a method to make the 3000's GSP as useful as the unit in an HP-UX server. "On HP-UX it is possible to reset from the host OS," he said. "I have not found a way from MPE."
Lalley explains that on HP-UX it is possible to issue the command
stty +resetGSP < /dev/GSPdiag1
to reset the GSP. From time to time a reset may be required for diagnostics services. If your 3000 gets loving care from outside your computer room, you may need a paper clip to keep service at HP-UX levels.
The gap between 3000 and HP 9000/Integrity GSPs is a common shortfall of HP designs. Even though the 3000's MPE/iX includes a Posix interface, HP didn't engineer enough Unix into the 3000 to enable some administration that HP-UX users enjoy. (That can be a good thing when a security breach opens up in the Unix world, however.)
But when a 3000 needs a GSP reset, pressing a magic recessed button on the 3000's back will do the trick if a Telnet command doesn't work. Matt Perdue of Hill Country Technologies and the OpenMPE board explains.
"I telnet to the IP address of the GSP, log in and do the reset that way," he says. "But you can get someone, to press the physical reset button at the back of the machine. If memory serves, it's recessed into the cabinet so you may need a 'magic paper clip' bent just so."
Lalley calls the GSP, which HP introduced with its final generation of 3000s, one of the most useful things in the A-Class and N-Class boxes.
The GSP is a small computer that is always powered on when the plug has power. With it, it is possible to telnet to and BE the console. While multiple admins can telnet in and watch, only one has the keyboard.
It is possible to reboot, memory dumps and even fully power down the HP 3000 from the GSP. Use the command PC OFF.
It is probably the best feature of the N-Class and A-class boxes. The problem is sometimes it needs to be reset, usually with a paper clip. Since the GSP is a different CPU, it can be done during business hours.
All of which begs the question of to secure these resets. He says the MPE/iX user/account structure provides the security.
As for security, users and passwords are defined, and there are two or three classes of users.
1) Administrator
2) Operator
3) Perhaps even User
I only use Operator, i.e. I usually am the only one who accesses it. I do have one customer that allows operators. They can reply and watch messages, but not reboot and so on.
Posted by Ron Seybold at 09:01 AM in Hidden Value, Homesteading | Permalink | Comments (0)
October 29, 2009
Links to 3000 via Unix, Linux stay free
Companies which continue to rely on the HP 3000 connect to the system using other servers. In this case, other means non-3000 computers, especially running Linux and various flavors of Unix. A free program was once available to install on the Unix or Linux host, but freevt3k has been found recently and rehosted for public use. It works with block mode well enough to drive the NMMGR tool shown above.
Mark West of Car Hop, an auto sales and finance firm, needed to perform this kind of link, but discovered that the known links to freevt3k through telemon.com have gone dead. West dug up the source code for the utility, rehosted it in a forge on SourceForge.net, then told the community about its lost-then-found resource.
I've been trying to find a suitable terminal to access the HP3000 servers we use at work. I made a couple of small corrections and set up a sourceforge project to store the freevt3k code on. While I’m sure this isn’t the most recent copy, at least it’s been saved from the lost and found. I’ll be happy to accept any patches sent to me.
Freevt3k made its debut in the late 1990s. HP discontinued its NS VT3K product, which allowed HP 9000s to log into the HP 3000. HP-UX 11.0 and later versions no longer support a pathway from outside systems into HP 3000s. But freevt3k a means to let users onto the systems if you don't want to use telnet. (Some companies have restrictions on telnet services into HP 3000s, but no limits on proprietary, internal access.) A freeware project created this shareware version of VT3K.
The version of the software that West has provided has Linux binaries and a Unix source tarball for download. Notes in the README file deliver instructions on how to use it.
Posted by Ron Seybold at 09:56 AM in Hidden Value, Homesteading, User Reports, Web Resources | Permalink | Comments (0)
October 28, 2009
Sites turn 3000 clocks back, and back on
This is the week in the world when the loss of an hour must be weathered in IT, as Daylight Savings time ends. (The UK lost its hour last weekend; the US does so Saturday night.) The HP 3000 does time shifting of its system clock automatically, thanks to patches HP built during 2007. But what about the internal clock of a computer that might be 15 years old? Components fail after awhile.
The 3000's internal time is preserved using a small battery, according to the experts out on the 3000 newsgroup. This came to light in a discussion about fixing a clock gone slow. A few MPE/iX commands and a trip to Radio Shack maintains a 3000's sense of time.
"I thought the internal clock could not be altered," said Paul English. "Our server was powered off for many months, and maybe the CMOS battery went flat." The result was that English's 3000 showed Greenwich Mean Time as being four years off reality. CTIME reported for his server:
* Greenwich Mean Time : THU, JUN 17, 2004, 11:30 AM *
* GMT/MPE offset : +-19670:30:00 *
* MPE System Time : THU, SEP 10, 2009, 2:00 PM *
Yup, that's a bad battery, said Pro 3k consultant Mark Ranft. "It is cheap at a specialty battery store," he said, "and can be replaced easily, if you have some hardware skills and a grounding strap." Radio Shack offers the battery.
But you can also alter the 3000's clock which tracks GMT, he added.
"The internal clock can be set or reset at bootup (the method varies depending on the hardware), or by using the MPE SETCLOCK date=xx/xx/xx;time;NOW command, in conjuction with SETCLOCK ;CANCEL. Follow these by the SHOWCLKS command. It usually takes me a couple of attempts to get it, but you should be able to straighten this out without even having to reboot."
A few customers warned that utility software will sometimes fail to start up if a bad battery has pulled the internal clock too far off the system clock. Tracy Johnson of OpenMPE explained:
Collateral damage may include some third party software going non-operational. I have at least one software package whose license goes bad when the offset gets too large (think years). When I fix the offset to a reasonable number (within a day or two), then the software works again.
Posted by Ron Seybold at 07:29 AM in Hidden Value, Homesteading | Permalink | Comments (0)
October 23, 2009
HP 3000 Becomes a Copy Cat
Sometimes, the HP 3000 can surprise you with its capabilities. Not long ago, the system revealed another life, this one as a minicomputer which controls a copier.
Both of those technologies, mini and copier, are considered old-school. Everybody understands what a copier does, but few people under 50 know what the term mini represents. For anybody reading who's only just arrived in IT during this decade, computers were known as mainframes, microcomputers, and minicomputers. People who know what mini means helped connect a Ricoh copier to a 3000. Over a network, no less.
Of course this Ricoh CP M4000 is not a copier of the '80s, not any more than the HP 3000 is a minicomputer of that era. The Ricoh prints for PCs (microcomputers) at Victor S. Barnes Company. It also stacks and staples, a feature set that IT manager Tom Hula wanted to extend to its 3000. The system became a copy cat by telling the copier to stop looking for some of its configuration information. A third party tool helped provide another way to claim this new life for the 3000.
Routing application output to print and copy devices often becomes the task of a print server. The 3000 has a good heritage of working with such a PC print clearinghouse. There's also the NBSPOOL software from Quest Software. The latter is still for sale, still supported. Quest is one of those suppliers who's going to be supporting 3000 sites a long time after HP leaves the field.
Another fine 3000 product, NetPrint from Minisoft, specializes in connecting HP 3000s with output devices HP doesn't support under MPE/iX. Hula found a workaround on his own, once he talked to the Ricoh support. The answer he discovered within 24 hours was to disable the NPCONFIG information on the output job
The problem had to do with restrictions that were set on printing color. On each workstation, I had had to specify black and white printing as the preference so that people could print to the copier. Using color then required an authorization code if the user had one assigned.
As far as I know, the HP 3000 has no way of communicating printing preferences to this copier. As soon as I removed the restriction from the copier, printing using the NPCONFIG entry I originally used worked.
One of the community's networking gurus added some more information to suggest another workaround. Jeff Kell, who manages the 3000 newsgroup where this catty advice appeared, said the 3000's tool set might include enough connection to talk to Ricoh's software drivers.
We have an “outsourced” copy center that uses Ricoh printers. Their printers normally require an authorization code to print anything. The only way to print to them from the 3000 was to have them disable the authorization check on the particular printer. Once that is done, it does accept a normal PCL-stream on tcp/9100 (with SNMP disabled).
Ricoh has drivers for Windows, and there are Unix “cups” configurations for them including authorization codes. But of course there is no MPE variant, unless you can front-end one with some esoteric “lpr” type options, using one of the 3000's external network printing packages (ESPUL?).
ESPUL was created by RAC Software's Rich Corn. The product is resold by Minisoft as NetPrint. The advice gives 3000 customers more than one way to skin this cat. Nothing that gruesome is needed to extend a 3000's reach today. You need only ask those who remember that the word mini can represent a large array of solutions.
Posted by Ron Seybold at 04:25 PM in Hidden Value, Homesteading, User Reports | Permalink | Comments (0)
September 18, 2009
3000s can track time, even update with Unix
Even while network testing 3000s in HP's Cupertino lab were being powered down last month, customers are working to employ network services on their own servers. NTP, the network time protocol, was ported and patched for MPE/iX years ago. A developer wanted the latest patched NTP version recently, software that consultant Craig Lalley sent him across the net in a 4 MB attachment.
Tony Summers of Smith Williamson, which migrated last year, said implementing NTP on the company's 3000 was disappointing, but suspected the install wasn't done properly. NTP itself is popular among all environment managers. "Our systems team are wanting to implement NTP on our Unix systems," he reported, "but I’m asking them (for technical reasons related to our own internal applications) that they only invoke NTP synchronization on a system reboot, rather than having it run constantly."
There are some reports that NTP can help manage 3000 operations, but not hosted on a 3000. Mark Ranft of Pro 3K says a corporate NTP server is assisting HP 3000s he manages, triggering an MPE/iX client.
"The NTP client executable that I have is called NTPDATE," he said. "I use it in a command file to compare the system date and time to the server. If it is more than 30 seconds off, I automatically use the same program with a different parameter to adjust the time. If it is more than 45 seconds off, I send a message/page, as something is up (like a time test or a reboot and someone forgot to set the hardware clock.) I have my proactive HP 3000 monitor doing this on all my systems every 10-20 minutes."Before a patch," he added, "I had seen heavily loaded systems experience time drift. This routine was a life-saver."
These NTP executables are scheduled to be part of HP shareware offerings on the Speedware Web site, as well as on the OpenMPE server. There's also a way to synchonize a 3000's clock with routines written into MPE/iX, as opposed to the open source add-on of NTP. Jeff Kell, whose expertise in networking included a stint as a Networks Special Interest Group chairman, offered this advice:
NTP may have issues as a server/daemon. If you just want to keep your 3000's clock periodically synchronized, try something like this:
> !job timesync,mgr.xntp;pri=cs
> !ntpdate "a.b.c.d w.x.y.z"
> !stream timesync.pub.xntp;in=0,12,0
Substitute your favorite time servers addresses for a.b.c.d and w.x.y.z. This is an "on-demand" synchronization every 12 hours (adjust to taste).
Posted by Ron Seybold at 09:20 AM in Hidden Value, Homesteading, User Reports | Permalink | Comments (0)
August 10, 2009
Use a Web console on a 959
Our Series 959 has a DB25 remote console socket, rather than the 9-pin of the N-Class servers. Can I still connect and use a Web console on this system?
Mark Ranft replies:
With the correct cable the Web console should definitely work on the 959. I had it working on a 989. I am not sure why you would compare the 959 to the N-Class. Anyone using Web console on the N-Class should switch to using their GSP console. For a better, more reliable, faster, more fully featured console on pre-GSP systems, I have set up remote console via DTC, using back-to-back DTC switching. It is very nice.
Craig Lalley adds:
Just use the 25-pin connector that is currently connected to the system console.
Jack Connor adds with a wink:
If you need both, you can use an A/B switch, if moving the cable is too strenuous.
Posted by Ron Seybold at 10:52 PM in Hidden Value | Permalink | Comments (0)
August 03, 2009
Use and understand byte stream 3000 files
Although HP's labs for the 3000 closed at the end of last year, some HP engineers continue to help the community. The HP help was offered most recently on the community's newsgroup, where system architect and former community liaison Craig Fairchild explained byte stream files on the 3000.
These fundamental files are a lot like those used in Windows and Linux and Unix, Fairchild explained. HP engineered "emulation type managers" into MPE/iX, an addition that became important once the 3000 gained an understanding of Posix. In 1994, MPE XL became MPE/iX when HP added this Unix-like namespace.
It's a rare gift to see a primer on 3000 file types emerge from HP today. Understanding the 3000 at this level is important to the customer who wants 3000 third party companies to take on the tasks HP is dropping next year. Fairchild explained the basics of this basic file type:
Fairchild detailed how HP has given bytestream files the knowledge of "organization of data" for applications.
The underlying properties of a byte stream file is that each byte is considered its own record. In MPE file system terms, a record is the smallest unit of IO that can be performed on a file. (You can write a partial record fixed length record, but the file system will pad it to a full record.) Since the smallest unit of I/O that can be performed on a byte stream file is a single byte, that becomes its MPE record size. In the MPE file system, the EOF tracks the number of records that are in a file. Since the record size of a byte stream file is one byte, the EOF of a byte stream file is also equal to the number of bytes in the file. This is why one 4-byte variable sized record is equal to 5 byte stream records (4 bytes of data + 1 \n character).
It's also worth noting that any file can be in any directory location and will behave the same way. (Well, almost. CM KSAM files are restricted to the MPE namespace. And of course the special files (that you don't normally see) that make up the file system root, accounts and groups are also restricted... one root, accounts as children of the root, groups as children of accounts. And lockwords aren't allowed outside the MPE namespace. But other than that the first sentence is true.)
The general model that we had in architecting the whole Posix addition was that behavior of a file does change regardless of where it is located. This was summed up in the saying, "A file is a file." So there are no such things as "MPE files" and "POSIX files". There's just files.
What does change is the way you name that file. Files in the MPE namespace can be named either through the MPE syntax (FILE.GROUP.ACCOUNT), or through the HFS syntax (/ACCOUNT/GROUP/FILE). You can also use symbolic links to create alternate names to the same file. This was summed up as a corrallary to the first saying, "But a name is not a name."
Posted by Ron Seybold at 06:59 PM in Hidden Value, Homesteading, News Outta HP | Permalink | Comments (0)
July 09, 2009
Command file tests dates for holidays
Community contributor Dave Powell has improved upon a command file created by Tracy Pierce to deliver a streamlined way to tell an HP 3000 about upcoming holidays. Datetest tells whether a day is a holiday. "I finally needed something like that," Powell says, "but I wanted the following main changes:
1: Boolean function syntax, so I could say :if holiday() then instead of
:xeq datetest
:if WhichVariableName = DontRememberWhatValue then
and also because I just think user-functions are cool."
"2. Much easier to add or disable specific holidays according to site-specific policies or even other countries’ rules. (Then disable Veterans Day, Presidents Day and MLK Day, because my company doesn’t take them.)
"3. Make it easy to add special one-off holidays like the day before/after Christmas at the last minute when the company announces them.
"Along the way, I also added midnight-protection and partial input date-checking, and made it more readable, at least to me."
Powell, who's contributed plenty of command files to the community through the HP 3000 newsgroup, says that most of the fun came in the day-of-week calculation.
I didn’t understand that part of Tracy’s script, or trust myself to adapt it without messing up, so I found a second method and used both, with a warning if the results didn’t agree. Surprise, surprise, they disagree about 12/25/2100, although they agree on dates I tested within the expected lifespan of MPE. So I shoveled in a third formula and found a day-of-week calculator spreadsheet, both of which agree with the second method. So anyone who uses Tracy’s original command file and plans to still run it in 2100 might need to make a change.
He offered what he called a preliminary version of the new datetest, which has been checked by Allegro's Steve Cooper.
option nolist
parm CCYYMMDD = ""
if bound (HOL_ERRORS) or bound (HOL_DAY)
deletevar HOL_@
endif
setvar HOL_ERRORS 0
if "!CCYYMMDD" = ""
setvar HOL_CYMD HPYYYYMMDD
setvar HOL_DAY !HPDAY
if HOL_CYMD <> HPYYYYMMDD
# if the date has changed, we just hit midnite and the
# day-of-week we just set might be the new day; in this
# case set the date & day-of-week again, and we should
# be ok (unless the following 2 commands take 24 hours :)
setvar HOL_CYMD HPYYYYMMDD
setvar HOL_DAY !HPDAY
endif
else
setvar HOL_CYMD "!CCYYMMDD"
if not numeric (HOL_CYMD)
echo **date parm, if entered, must be numeric**
setvar HOL_ERRORS HOL_ERRORS + 1
endif
if len (HOL_CYMD) <> 8
echo **date parm must be exactly 8 digits, unless omitted**
setvar HOL_ERRORS HOL_ERRORS + 1
elseif numeric (HOL_CYMD)
if rht (HOL_CYMD, 2) > "31"
echo **last 2 digits of date parm can't be more than 31**
setvar HOL_ERRORS HOL_ERRORS + 1
elseif rht (HOL_CYMD, 2) = "00"
echo **last 2 digits of date parm can't be "00"**
setvar HOL_ERRORS HOL_ERRORS + 1
endif
if str (HOL_CYMD, 5, 2) > "12"
echo **bytes 5 & 6 of date parm can't be more than 12**
setvar HOL_ERRORS HOL_ERRORS + 1
elseif str (HOL_CYMD, 5, 2) = "00"
echo **characters 5 & 6 of date parm can't be "00"**
setvar HOL_ERRORS HOL_ERRORS + 1
endif
endif
if HOL_ERRORS > 0
echo **exiting because the date-parm was not a valid**
echo **8-digit date in yyyymmdd format **
return FALSE
endif
endif
# -------------------------------------------------------
# do not casually modify above here
#
# Take any special / unofficial holidays here
# OK to replace any dates that are past with the date of a
# holiday the company just announced (Jewish new year,
# days before / after Christmas & New Years, etc, etc)
if HOL_CYMD="20080929" or HOL_CYMD="20081008" &
or HOL_CYMD="20081226" or HOL_CYMD="20090102"
echo It's a special company holiday :)
return TRUE
endif
# do not casually modify below here
# -------------------------------------------------------
setvar HOL_YYYY str (HOL_CYMD, 1, 4)
setvar HOL_MM str (HOL_CYMD, 5, 2)
setvar HOL_DD str (HOL_CYMD, 7, 2)
#
# Set day of week, unless already set because processing "today"
#
if not bound (HOL_DAY)
# 1st, the method in the original "datetest" command file
setvar HOL_DAY str("000031059090120151181212243273304334", &
!HOL_MM * 3 - 2, 3)
setvar HOL_DAY !HOL_DAY + !HOL_DD
IF !HOL_MM > 2 and ( !HOL_YYYY / 4 * 4 = !HOL_YYYY )
setvar HOL_DAY HOL_DAY + 1
ENDIF
setvar HOL_YWK !HOL_YYYY - 1
setvar HOL_DAY !HOL_DAY + ( !HOL_YWK / 400 ) * 146097
setvar HOL_YWK !HOL_YWK mod 400
setvar HOL_DAY !HOL_DAY - ( !HOL_YWK / 100 ) * 36524
setvar HOL_YWK !HOL_YWK mod 100
setvar HOL_DAY !HOL_DAY + ( !HOL_YWK / 4 ) * 1461
setvar HOL_YWK !HOL_YWK mod 4
setvar HOL_DAY !HOL_DAY + ( !HOL_YWK * 365 )
setvar HOL_DAY ( HOL_DAY mod 7 ) + 1
deletevar HOL_YWK
# Next, the method posted to the 3000-l by Mike Hornsby 06/04/2004
# except, add 1 at the end because his was 0-6 and we need
# 1-7.
setvar HOL_XYR !HOL_YYYY-((12-!HOL_MM)/10)
setvar HOL_XMONTH !HOL_MM+(((12-!HOL_MM)/10)*12)
setvar HOL_XDAY !HOL_DD+(!HOL_XMONTH*2)+(((!HOL_XMONTH+1)*6)/10)
setvar HOL_XLEAP_YR (HOL_XYR/4) - (HOL_XYR/100) + (HOL_XYR/400)
setvar HOL_XDAY (HOL_XDAY+HOL_XYR+HOL_XLEAP_YR+1) mod 7 + 1
# Next, day-of-week with my adaption of a "Zeller" formula
# off the internet.
if HOL_MM < "03"
setvar HOL_ZMONTH !HOL_MM + 12
setvar HOL_ZYEAR !HOL_YYYY - 1
else
setvar HOL_ZMONTH !HOL_MM
setvar HOL_ZYEAR !HOL_YYYY
endif
setvar HOL_ZDAY ( &
((13 * HOL_ZMONTH + 3) / 5) + !HOL_DD + HOL_ZYEAR &
+ (HOL_ZYEAR/4) - (HOL_ZYEAR/100) + (HOL_ZYEAR/400) &
+ 1 ) mod 7 + 1
# Now, see if the day-of-week calcs agree
if HOL_DAY <> HOL_XDAY &
or HOL_DAY <> HOL_ZDAY &
or HOL_ZDAY <> HOL_XDAY
setvar HOL_ERRORS HOL_ERRORS + 1
echo **day-of-week error**
echo HOL_DAY = !HOL_DAY
echo HOL_XDAY = !HOL_XDAY
echo HOL_ZDAY = !HOL_ZDAY
endif
setvar HOL_DAY HOL_ZDAY
deletevar HOL_X@, HOL_Z@
ENDIF
#
# Now check for specific regular holidays, month-by-month.
if HOL_MM = "01"
if HOL_DD = "01"
echo It's New Years Day
return TRUE
endif
if ( !HOL_DAY=2 and !HOL_DD>=15 and !HOL_DD<=21 )
echo (It's Martin Luther King day - but do we get it?)
# return TRUE
endif
return FALSE
elseif HOL_MM = "02"
if (!HOL_DAY=2 and !HOL_DD>=15 and !HOL_DD<=21)
echo (It's President's Day - but do we get it?)
# return TRUE
endif
return FALSE
elseif HOL_MM = "05"
if (!HOL_DAY=2 and !HOL_DD>=25 and !HOL_DD<=31)
echo It's Memorial Day
return TRUE
endif
return FALSE
elseif HOL_MM = "07"
if HOL_DD = "04"
echo It's July 4th
return TRUE
endif
return FALSE
elseif HOL_MM = "09"
if ( !HOL_DAY=2 and !HOL_DD>=1 and !HOL_DD<=7 )
echo It's Labor Day
return TRUE
endif
return FALSE
elseif HOL_MM = "11"
if HOL_DD = "11"
echo (it's Veterans Day - but do we get it ?)
# return TRUE
endif
if ( !HOL_DAY=5 and !HOL_DD>=22 and !HOL_DD<=28 )
echo It's Thanksgiving
return TRUE
endif
if ( !HOL_DAY=6 and !HOL_DD>=23 and !HOL_DD<=29 )
echo It's the day after Thanksgiving
return TRUE
endif
return FALSE
elseif HOL_MM = "12"
if HOL_DD = "25"
echo It's Christmas
return TRUE
endif
return FALSE
endif
# showvar HOL_@
return FALSE
# Function "holiday" to return 'TRUE' on company holidays
# Dave Powell, MMfab, Inc 05/12/2009
#
# Syntax if holiday () then <checks today>
# calc holiday (20090511)
# if holiday ("20090511") then
# calc holiday (SomeDateVariable)
# etc
# or, for a company that sometimes has a few people in
# Saturday morning, but its not like a real workday
# setvar OFFDAY HOLIDAY() or HPDAY=1
# setvar WORKDAY HPDAY<7 and not OFFDAY
# setvar MAYBEDAY not ( OFFDAY or WORKDAY )
# etc
#
# Logic adapted from the "datetest" command file
# posted by Tracy Pierce on the HP-3000L on 09/26/2002
#
# Variable-naming convention:
# - 'DD', "MM", "YYYY" etc mean string variables with the
# length you might guess from the name.
# - 'DAY', "YEAR", "MONTH" mean integer-type variables.
#
# Changes / "improvements" in this file over original "datetest"
# - Function syntax, so you can say
# if holiday() then
# instead of
# xeq datetest
# if IForgetTheVariableName = WhatWasThatValue then
# - Separate "if"s for each holiday, to make it easier to
# turn them on or off depending on your site's policies.
# - Then turns off some holidays I don't I think I can
# count on MMfab always taking.
# - It echoes the name of whatever holiday it thinks it is,
# do make debugging easier.
# - Has a spot to put in extra / unofficial days off when
# the company announces them (like the day before / after
# Christmas).
# - Returns true if the holiday falls on a Saturday or Sunday,
# except Easter Sunday, which is ugly.
# - Midnite protection.
# - Checks that the date is numeric, with plausible month & day
# (does not check that the day is too high for that month)
# - More readable ?
# - Calculates day-of-week three ways and compares them, as an
# extra double-check since I don't understand any of
# these calculations :(
# Downgrades:
# - Won't try to guess the century -- cannot handle 6-digit
# input.
#
#
# Any errors return "FALSE" on the assumption that the programmer,
# at least, can't take a holiday until he fixes the bug :)
#
#
# Day-of-Week note:
# The 3 methods mostly agree, but 12-25-2100 is a Sunday
# according to method 1, but a Saturday according to methods
# 2 & 3. Babwani's modified 2007 date-calc spreadsheet also
# says Saturday.
Posted by Ron Seybold at 02:33 PM in Hidden Value, Homesteading | Permalink | Comments (0)
May 11, 2009
Secure transfers come out of open shell
The Secure Copy Protocol (SCP) is a suite of transfer solutions that's in a transition position for the HP 3000. Enough work has been completed to bring this software into use under MPE/iX.
Donna Hofmeister, an OpenMPE director, has reported that
When Jeff Vance was at HP, he wrote a FTP script that used the Posix program ‘crypt’ to encrypt/decrypt files leaving an MPE system. If the destination system was also MPE, the file would be automatically decrypted upon delivery.
An expert in open source solutions that run on the 3000 says that SCP clients already have logged work on HP 3000s. Server-side SCP components are still in the future, though, for MPE/iX.
Hofmeister added, "I wrote a very simple decryption shell script for Unix/Linux. If someone had a lot of time on their hands and had intimate knowledge of Unix/Linux porting, there’s a remote possibility, I think, of moving this to the 3000. If all that you're looking for is 'push' (from MPE/iX) functionality, sftpput should work for you."
Brian Edminster of Applied Technologies explained the biggest challenge at the moment is finding OpenSSH download sources, since HP pulled the plug on the Invent3k Web server.
SCP (and sftp) clients are available for MPE/iX and work fine on version 7.5. You can contact me if you’d like to discuss how to get a copy of your own. I’ve had extensive experience with the sftp client, and some with the scp client. Both work remarkably well, although there are some ‘quirks’ it helps to be aware of. I’d be happy to discuss those too.
The limitation here is that while files can be put to or retrived from other systems, since only the client is available, the 3000 must originate the transaction. This can make for some process redesigns if your existing applications are used to your 3000 being the ‘server’. And no, jinetd doesn’t need to be running for SCP or sftp to work.
There is a port (although technically not complete) of what is by now a fairly old but still workable version of OpenSSH to MPE/iX. It was done by Ken Hirsh, which he had gratiously made available to the 3000 community via his Invent3k account. Unfortunately, the ‘Invent3k’ community development server that HP had made available some years ago is, like Jazz, no longer online. [OpenMPE has plans to rehost the Invent3k programs.]
I don’t recall what version of MPE was used, but I’ve used the ported software successfully on 7.0 and 7.5. I suspect it’ll work on 6.0 or later, but as yet haven’t tested it myself. His port included the ‘ssh’ command line client, but it had very limited functionality due to technical issues.
It also included the client components sftp and scp, as well as an ‘entropy’ (random number) generator written in Perl. This last piece is necessary because the ‘random’ number functions under MPE/iX aren’t very random. At least, not as far as serious cryptography is concerned. This Perl script (modified by Ken to run on MPE) was originally written by others to get around not having a kernel-based entropy source for their systems either. Poor quality random number generation is not just a MPE/iX issue.
The ‘server’ components (sshd, sftpd, and scpd) were never ported for reasons that Ken could possibly explain. It might have been something as simple as he didn’t need them. From my perspective I’m thankful that Ken did the port in the first place.
I have installed his OpenSSH port many times, and even tightly integrated it with legacy applications. Sftp is still in use many times a day with those applications, and since first installed several years go has safely and securely transferred terabytes of data, with no clear end-date for this application’s life.
I did a presentation on this at the 2008 GHRUG conference. Look at the bottom of the ‘Links & Other Resources’ page at my Web site.
I’m currently in the process of adding even more use of sftp and scp to replace standard FTP in this client’s applications, at the insistence of their PCI auditors -- and so will have more stories to share.
Posted by Ron Seybold at 07:23 PM in Hidden Value, Homesteading, Web Resources | Permalink | Comments (1)
May 04, 2009
Paper clip enables resets for disks
The HP 3000 was designed for satisfactory remote access, but there are times when the system hardware needs to be in front of you. Such was the case for a system analyst who was adding a disk drive recently to a A-Class HP 3000.
Central to this process is the 3000's Guardian Service Processor (GSP). This portion of the A-Class and N-Class Multifunction IO card gives system managers basic console operations to control the hardware before MPE/iX is booted, as well as providing connectivity to manage the system. Functions supported by the GSP include displaying self-test chassis codes, executing boot commands, and determining installed hardware. (You can also read it as a speedometer for how fact your system is executing.)
The GSP was the answer when Larry Simonsen asked
I need to configure some additional disk drives and I believe reboot the server. The GSP is connected to a IP switch and I have the IP address for it, but it is not responding. I believe I need to enable it from the console. Can this be done from the soft console, using a PC as the console with a console # command?
A paper clip will reset the GSP and enable access, says EchoTech's Craig Lalley.
Lalley added that a GSP reset is an annual maintenance step for him.
I find it is necessary to reset the GSP about once a year. It seems to correlate to when you really need to get access, and you can't get physical access to the box. Good old Murphy's law.
Resource 3000's Stan Sieler (one of the Allegro Consultants) has a fine white paper online about MPE/iX system failure and hang recovery that includes GSP tips.
HP's documentation on resetting the GSP for the 900 Series 3000s, remotely through commands, is still online at the HP Web site.
Posted by Ron Seybold at 01:18 PM in Hidden Value, Homesteading, Web Resources | Permalink | Comments (0)
April 23, 2009
How to Peer Into TurboIMAGE databases
I am looking for a way to permit ordinary users (programmers and support staff) to see who is using a TurboIMAGE database, and what locks are in effect and are pending -- the information you would see with DBUTIL using SHOW ... USERS and SHOW ... LOCKS or SHOW ... ALL.
I have to work within these constraints: (1) Can’t let them log on with SM capability. (2) Can’t let them log on as the database creator. (3) Can’t reveal the password on the MPEX GOD program. (4) Can’t reveal the password on DBUTIL. Is there a utility to do this?
Eric Sand replies
To keep things simple, I would just create a “RELEASED” job that can execute DBUTIL with the proper passwords to the DB that you want to examine and direct the output to a file that anyone can read.
The job that wants the locking info would stream this DBUTIL job using the “COMMAND” intrinsic and then parse the output file. This could be done by the “CALLING” program repeatedly if needed and report its findings. Each file could be created unique by composing its name based on a sequential numbering scheme from the results of a LISTF.
Posted by Ron Seybold at 12:22 PM in Hidden Value, Homesteading | Permalink | Comments (1)
April 21, 2009
Community needs HP support users to test final FTP patch
A new patch to repair a broken command in FTP/iX needs testing now, but the 3000 community must now rely on HP support customers to test HP's lab work. The FTPHDK7A patch repairs the MGET command in the 3000's FTP file transfer program, the industry standard to move files between servers. But like a significant number of HP's 2007-08 lab projects, this patch is trapped in beta-test limbo.
HP's release policy remains unchanged about the patches it's created. Each one must be tested by 3000 owners before the vendor will release the patch to all 3000 sites, even the customers who don't use HP support. The beta-test limbo has seen a lot of patches check in, and far fewer checked out for public release. HP was supposed to be considering reducing the test requirements. But the vendor closed its lab without altering the policy.
OpenMPE has a list of unresolved 3000 issues like this one that HP left behind. MGET isn't critical unless a customer needs bulk transfer of many files in a directory. The bug also existed in last year's HP-UX version of FTP, according to Allegro's Donna Hofmeister. But the HP-UX version of this patch received the tests needed for a full HP release.
Even though HP now has only support division level engineers working on 3000 issues until 2011, nothing is different for the vendor. HP wants to avoid giving any supported customer an under-tested patch. But only HP's support customers can free up this beta-test software. HP won't let the full 3000 community do any beta testing — even after OpenMPE asked to set up a non-customer beta test team.
What's more, HP's engineering load was so heavy last year, the 3000 labs only had enough manpower to create MPE/iX 7.5 patches. FTPHDK7A is only crafted for this latest MPE/iX. At least half the 3000s today are running an earlier release. But even this 7.5-only software needs HP support customers to help the homesteaders.
"If you still have an HP software support contract and are willing to apply the patch -- for the good of the community, frankly -- please call the Response Center," said Hofmeister. Her husband James, who's in the HP's networking support center, discovered the bug last year. "In order for the patch to be General Released, more people need to request and install the patch. Be a good sport and place a call," Donna added.
Until the patch is sprung from beta jail, the GET command, one file at a time, will have to be workaround for FTP. HP had better reasons for its exacting test process when the community of 3000 users was bigger and patches still rolled out of the lab. In 2009, the policy is a relic, outdated procedure designed to protect HP's liability rather than assist the full 3000 community.
Posted by Ron Seybold at 12:21 PM in Hidden Value, Homesteading, News Outta HP | Permalink | Comments (0)
April 10, 2009
HP helps network 3000s with classless IP
HP is still offering free technical advice for the HP 3000 through its IT Response Center experts Web site. Just this week, an Hewlett-Packard support specialist who moderates the board answered a question about configuring a 3000 for a private network.
You can browse that HP Forum for answers to questions at the MPE/iX Web page. HP's advice might not be any better or worse than a third party support expert's, but at least the vendor is still answering questions from the 3000 community. For example, here's a recent Q&A between a user and an HP Canada networking expert.
Mask: 255.255.255.0
Gateway: 10.140.6.254
HP moderator Emile Kwan Fong said
This is done using the NMMGR program. To configure the IP and Subnet mask, go to the path NETXPORT.NI.<NIname>.PROTOCOL.IP.
Kwan Fong, who's been answering questions for the past eight years on the site, added
To configure the gateway, go to the path NETXPORT.NI.<NIname>.INTERNET. You can leave the the default @ for the "reachable networks" fields. Make sure you validate NETXPORT.
You may want to stop/restart the network or hard boot (start norecovery) the 3000 for the changes to take effect.
Posted by Ron Seybold at 01:14 AM in Hidden Value, Homesteading | Permalink | Comments (0)
April 06, 2009
PING, IMAGE made easier on 3000
I’m looking for a program that will read IMAGE log files. I know Bradmark has something to analyze these files that I can purchase, but at the present time I really don’t have any money in the budget. What’s available for free?
Cathlene McRae of HP helps out:
I have a new HP 3000 A500 installation that I can't Telnet to. Ping works both ways, but I get nothing with Reflection's Telnet. What do I need to check on the 3000 to get Telnet running?
Robert Schlosser says:
OpenMPE director Donna Hofmeister adds:
There's a collection of 'samp' files in .NET that in most cases need to be copied to their 'real' file name in order to make TCP/INETD networking work.
Hofmeister, one of the community's more experienced hands with the standard Unix and Posix utilities built into MPE/iX and the HP 3000, explained.
BPTABSMP -- bootptab (most people don’t use)
HOSTSAMP -- hosts
INCNFSMP -- inetd configuration
INSECSMP -- inetd security
NETSAMP -- reachable networks
NSSWSAMP -- nsswitch
PROTSAMP -- protocol
RSLVSAMP -- DNS resolving
SERVSAMP -- services
I believe each of the files also has a counterpart in /etc which is a link to the real file in .NET.SYS. If the real files are missing from .NET.SYS then many things (including Telnet and FTP) won’t work.
Posted by Ron Seybold at 06:29 PM in Hidden Value, Homesteading, News Outta HP, Web Resources | Permalink | Comments (0)
March 24, 2009
Ways to Recover a 3000 Password
My operator, in his infinite wisdom, decided to change passwords on MANAGER.SYS. Of course he forgot, or fat-finger-checked; I don’t know. At any rate, I need some help. Any suggestions, other than a blindfold and cigarette?
Chuck Trites offered this solution:
Duane Percox of QSS added a simpler approach:
file xt=mytape;dev=disc
file syslist=$stdlist
store command.pub;*xt;directory;show
Using your favorite editor or other utility search for the string: "ALTUSER MANAGER SYS"
You will notice: PAS=<the pwd> which is your clue.
Plus, Steve Ritenour suggests that a logon to the TELSUP account will unlock the passwords. For some 3000 managers, the subject itself should be filed in a place not easily found. "These responses are all well and good," said Bruce Collins of Softvoyage, "but shouldn't we be thinking twice about posting this kind of information (i.e. how to hack an HP 3000) to the 3000 newsgroup?"
Bill Lancaster of Lund Performance Solutions disagreed. Secrecy about password recovery is not really a secret, he said.
I’m afraid the barn door is already open.
Posted by Ron Seybold at 06:20 PM in Hidden Value | Permalink | Comments (0)
February 25, 2009
IMAGE logging: the poor man's shadow
Tracy Johnson, a business analyst at Measurement Specialties and an OpenMPE board member, suggested recently that the logging feature of the 3000's database IMAGE has powerful potential.
Johnson's finger is aided by a third-party tool. The HP 3000 environment grew rich and powerful over the past three decades as a result of third-party engineering such as the software from Summit Systems.
David Byrns of Summit Systems, which serves the 3000 manufacturing community but creates all manner of tools for 3000s, explained. "The 3000 Audit Tool that Tracy refers to works on all HP 3000 applications that use IMAGE, not just MANMAN."
The Audit Tool has had a long history of helping 3000 customers. Nearly four years ago we detailed the software's scope in a story written before our current blog went online. We wrote:
“This is my first tool that goes beyond the MANMAN community,” Byrns said. “I wrote this for MANMAN sites, but there’s been a lot of interest from other sites, too.”
Our 2005 article has more details on this tool to empower your HP 3000's logging potential.
Posted by Ron Seybold at 07:57 AM in Hidden Value, Homesteading | Permalink | Comments (0)
January 15, 2009
Contributed tool spools 3000 output to Word
Michael Anderson, one of the independent support providers and contract developers in the 3000 community, posed a question: How can you get the 3000's spooler output into shape for use in Microsoft Word?
There's an answer among the third party tools, yes; Hillary Software’s product, ByRequest. The product will pick up spoolfiles from the HP 3000 and convert them into Word or Excel format. But what if your 3000 budget is as tamped down as the stock market? You'd be looking for something created by the community.
Dave Powell has your answer. He's built a command file called hp2rtf, tapping the Rich Text Format that's a little-used but powerful bridge for Word document exchange.
Powell recently said
You can get hptrtf from Powell by e-mailing him. The software is another candidate for finding a home on that community software server that OpenMPE is assembling.
Posted by Ron Seybold at 08:34 PM in Hidden Value | Permalink | Comments (0)
January 06, 2009
Who's to mind the CALENDAR?
Last year we took note of the HPCALENDAR intrinsic and its ability to create accurate timestamps for decades to come on the HP 3000. The intrinsic isn't new, though, even though HP advised its customers in November to begin using it on HP 3000s.
No, HPCALENDAR harks back to version 5.5 of MPE/iX. Its power lies in the 3000 for use by programmers who want accurate dates beyond 2038 for application files. But the operating system itself? It continues to use the old CALENDAR intrinsic, which only gives an accurate timestamp to 2027.
Is it foolish to be considering the timestamping ability of a 3000 some 19 years into the future? HP must have thought so while it made technical decisions for this system over the past seven years, knowing the vendor would step out of the 3000 community. You see, HPCALENDAR was never integrated into the operating system itself.
Now, with the 3000's development labs closed down, the community can wonder who'll keep the calendar functions up to date for MPE/iX.
Vesoft's Vladimir Volokh called to update us on the CALENDAR mistake, based on an error we made in our November printed issue. Although I carefully reproduced all of the HP technical details about using HPCALENDAR, a "display quote" on the page didn't get the facts correct"
Actually, it's Unix that's going to lose the ability to store timestamps accurately by 2038. Volokh explained that since HPCALENDAR uses 23 bits to store timestamps, there are 8.3 million places to store a date. If only HPCALENDAR had been wired into MPE/iX, instead of just available for application programmers to use as an intrinsic.
Posted by Ron Seybold at 08:00 AM in Hidden Value, Homesteading, News Outta HP | Permalink | Comments (0)
November 10, 2008
3000 goes in an open direction
More than 11 years ago, HP was teaching HP 3000 skills to the world. George Stachnik, an HP employee who communicated 3000 advantages to customers, wrote a series of articles for HP 3000 newbies. In an early part of his series that started in 1997, he summed up HP's view of the system's future (Where's the HP 3000 Going?) as the company saw it back then.
The evolution of the HP 3000 has been driven by the open systems revolution that swept across the IS industry beginning in the 1990s. By 1990, most new computer applications and technologies were being developed on (and for) Unix computers. This trend threatened to leave proprietary architectures like the HP 3000 out in the cold.
In response, HP began bringing industry standard interfaces from the HP 9000 to the HP 3000, focusing first on functions that were standardized by IEEE’s Posix committees. Version 4.0 of MPE XL was renamed to“MPE/iX” (the iX stands for “Integrated PosiX”). The Posix functionality made it easier than it had been to port software from Unix to the HP 3000. Other industry standards (BSD Sockets, SQL, ODBC, Java) have been brought to the 3000 by HP in subsequent OS releases. All this open systems functionality has continued to be enhanced on subsequent releases.
Of course, that Posix functionality remains in MPE after seven successive releases. HP has not eliminated much from the 3000's feature set after more than 30 years of development. Posix makes the HP 3000 behave like Unix systems. HP was betting in 1997 that this similarity could preserve the system. Even though HP shifted its bets four years later about the 3000, using the Posix shell is a way to get an IT staffer introduced to the 3000 from a Unix perspective.
Consider that this weekend starts the eighth year of 3000 survival after HP changed its bet. Adding Posix may not have had the effect HP intended for the vendor's 3000 business. But it edged the system into open source, which could be a key to surviving another seven years.
It's good to remember how much hope HP projected, as well as how much effort the supplier made, here at the end of the seventh year of The Transition. Keeping the system in growth mode was a challenge too complex for Hewlett-Packard to meet. HP had failures in the past with the 3000, like the abortive System 3000 introduction in 1972.
Stachnik explained how Posix would change interfacing with a 3000 in his article. But he underlined the design choices that make this computer a lasting value for those who are staying with it, as well as those taking longer than expected to leave it.
Many computer vendors say that their systems software is “tuned for transaction processing” but in the case of the HP 3000, this is no idle claim. A tremendous amount of R&D work was done at HP to understand exactly what kinds of stresses are placed on computer systems by commercial transaction processing workloads. And the payoff from this R&D was an HP 3000 that was tuned for the best possible performance.
HP got its payoff in open source applications not long after Stachnik's article, earnings that continue to deliver today in DNS services harder to hack than any "industry standard" system, Samba file sharing and more. It all began with an integration of Unix into the HP 3000, differences Stachnik explained in an accompanying article. Have a look at what he wrote, one of the "3000 for Dummies" lessons which continues to teach, here at the end of the seventh year of migrations. HP was directing this system out of the cold in the 1990s. It's still warm to the touch today.
Posted by Ron Seybold at 05:57 AM in Hidden Value, History, Homesteading | Permalink | Comments (0)
November 07, 2008
Keep the CALENDAR up to date
The year 2027 has been notable for customers who don't plan to leave the HP 3000. That's the year when timestamps stop being accurate, because the CALENDAR intrinsic in MPE/iX only uses 7 bits to store year information.
If your HP 3000 apps are using CALENDAR, HP advises that you use the newer HPCALENDAR. The newer intrinsic extends the 3000's date accuracy for more than 30 years beyond 2008. Yes, that's right; 2038 will be the last year to accurately store timestamps.
HP's advisory, which got referenced by its support and patch tracker today, explains the differences. At least in part:
The original MPE timestamp format was that used by the CALENDAR intrinsic, a 16 bit quantity allowing 9 bits for the day of the year and 7 bits for the year, added to 1900. Since the largest number represented by 7 bits is 127, this format is limited to accurately storing years up to 2027.
The newer HPCALENDAR intrinsic uses a 32 bit quantity, allowing 23 bits for the year, since 1900 and the same 9 bits for the day of the year. This format provides a significantly longer period of timestamp accuracy.
When HP began to talk about a Posix timestamp function that works on the 3000, the advice needed a bit of explanation from HP's 3000 lab engineer Bill Cadier.
Cadier reports
If, for example someone needs to store the maturity date for a 30 year mortgage started this month, neither the traditional CALENDAR format nor the time() format will work as they are only accurate to 31 December 2027 and 19 January 2038 respectively. The HPCALENDAR date format provides 23 bits to store the year added to 1900 — and since one can store 8,388,607 in those 23 bits, this format provides the best accuracy for storing future dates on the e3000.
The advisory, which you can read for yourself at the HP IT Response Center Web site, says in part
Certain POSIX applications may use the time() function as the basis for timestamps; and may therefore, store timestamps in the format used by time(), which is a 32 bit quantity representing the number of seconds from the epoch 1 January 1970. This format is limited to accurately storing timestamps up to 19 January 2038.
If your applications have a need to create and store future transaction timestamps, HP recommends using HPCALENDAR, HPDATECONVERT, HPDATEDIFF, HPDATEFORMAT or HPDATEOFFSET to ensure they are created correctly.
HP built MPE to an extraordinary level of durability. Not even Unix, which relies on the time() function, is going to be able to handle dates as long as MPE/iX, using the invented-in-HP HPCALENDAR intrinsic. This is a good example of why vendor engineering, beyond industry standards, gives "legacy" platforms a longer life — sometimes longer than even the vendor estimates.
Posted by Ron Seybold at 08:55 PM in Hidden Value, Homesteading, News Outta HP, Web Resources | Permalink | Comments (0)
October 14, 2008
The 3000: Always New to Someone
Even a computer more than 15 years old can appear new. When this happens — like when a company's lone IT manager first takes on a 3000, still running critical apps — then MPE/iX and the PA-RISC hardware seem like unfamiliar territory.
But this server of more than three decades has a mature community of experts online, cruising the newsgroup for the HP 3000. In messages on comp.sys.hp.mpe, a team of veterans led a newbie through the fundamentals of 3000 use.
"What a blast the past couple weeks have been," said Paul Raulerson. "I have fallen in love with this little HP 3000. I've been coming home from work and playing with it, learning and having a grand old time. Even running RPG programs on it. Great fun! I've been having an argument with it about talking on the network, and just got it completely up and operating."
Paul had questions a-plenty about his 9x7 system — a generation of HP 3000, by the way, which is still running some companies around the world.
Raulerson said,
Tapes are a fascinating subject — how might one read the directory off a tape? I have a few tapes that were sent with the machine, and absolutely no clue of how to find out what is on them.
Also, the manual talks about labeling tapes, but I think it means actually physical labels! Do I need to to somehow initialize a tape with a standard, ANSI, or no label format?
And speaking of which, can I back up the entire system to a tape? Do I need to do that with an ISL utility?
Alternatively, can I attach some external DASD and back up the system volume to one of those?
Craig Lalley answered,
TAPEDIR displays the contents of CM STORE tapes. TAPEDIR is a subset of the TINDEX Tool, which handles NM and CM STORE tapes, TAR tapes, SLT/SYSGEN tapes, memory dump tapes, and others (LZW, std, plain text information).
This nice little utility is brought to from our good friends at Allegro. (Well known name in our little industry/)
You can download TAPEDIR from www.allegro.com/software/hp3000/stuff/TAPEDIR.std
But if you want to have fun, look at all the other “cool” stuff.
Gary Robillard added,
If the tapes turn out to actually be MPE/V format tapes, the VALIDATE program can list the files on an MPE V/E store format tape.
If you have the validate utility it would be in the PUBXL group in the TELESUP account. To get information about the program, run the program with the HELP entrypoint (the command would be RUN VALIDATE.PUBXL.TELESUP,HELP).
There is also a utility in the ROBELLE account named TAPEDIR.QLIB.ROBELLE (to get info about it RUN TAPEDIR.QLIB.ROBELLE,HELP)
Finally, OpenMPE director Tracy Johnson explained,
Sometimes third party backups will appear as MPE/V format. Backpack (a.k.a. Roadrunner) tapes may do this. Rather than belabor whether it is an MPE/V tape, it may be easier just to see if it is a third party backup tape. Just go ahead and do a RESTORE of two possible files:
FILE T;DEV=7
RESTORE *T;BACKREST.PUB.SYS,ROADREST.PUB.SYS;SHOWIf either one of these files appear on the RESTORE, then it is a tape made by a third party backup utility. Both Backpack and Roadrunner are programs (made by two incarnations of the same company) that will perform tape restore operations on these tapes only.
Posted by Ron Seybold at 10:50 PM in Hidden Value, Homesteading, Newsmakers | Permalink | Comments (0)
October 13, 2008
Yes, HPSUSAN, there is a transfer
When buying an HP 3000, how do you transfer HPSUSAN numbers legally?
OpenMPE director Donna Hofmeister replies:
I believe that you do not transfer MPE licenses. If you buy a 3000, you buy the license as well.
When another community member explained that HP transfers HPSUSAN numbers to new systems, Lars Appel, a former HP support engineer now consulting with Marxmeier Software, added:
Keep in mind, even if you arrange to move the HPSUSAN number from the old system to the new system... this might not solve all your license code issues with third party applications... because some of them might also check HPCPUNAME if the license depends on the system “size” as well... and your HPCPUNAME might be different when your new system is not of the same model and CPU count.
How should parts and entire HP 3000 systems be stored if stockpiled? What ration of parts will be functional after being stored for 6-24 months? What will be the level of workability for parts and systems after 2008?
Donna Hofmeister replies:
I’m not sure you (as a company) should be worrying about stockpiling hardware unless you’ve got some circumstance (like being based in the Yukon or something) that warrants doing so. The hardware support vendor that you partner with should being doing this for you. This is an example of the kind of question you need to ask your hardware partner.
Hofmeister went on to deliver some supplemental hardware advice to help keep a 3000 running uninterrupted.
Having said that, I’ll urge you as strongly as possible to look at upgrading your disc. It’s probably the one component most likely to fail on your box — especially if you’re still running internal 4Gb or 8Gb drives. If your drives have been in service for more than 8-10 years (did you put in new disc to upgrade to 5.5 for Y2K?) in my opinion you’re skating on thin ice! It’s a matter of time before you’ll be changing disc in a panic instead easily over some weekend. So ask your vendor — do you have staff that can assist with a disc migration?
I’ll add in one other comment. Do not even think of trying to homestead without hardware support. Sure, it looks cheap to buy hardware only when something breaks. However, if you come to your local hardware vendor five years from now wanting a replacement “x” and you’ve no previous relationship with this company, I wouldn’t much blame them for laughing uproariously after you get off the phone. On the other hand, by establishing a relationship (e.g., contract = spending money) with them now, you can jointly determine your best course of action.
Posted by Ron Seybold at 08:09 PM in Hidden Value, Homesteading | Permalink | Comments (0)
September 24, 2008
Programming Made Easier
Historic facts can expire, their sell-by dates causing what we know to become untrue. Take the history of the HP 3000's advances. In 2000, HP's pledge to take MPE/iX onto the Itanium architecture was already history, since the vendor made the promise several years earlier. Then in late 2001, well, that history became invalid, and to some customers, simply untrue. But some artifacts of history hold facts that remain true no matter what their date, especially if you own or operate a 3000 of any vintage.
Durable truth is hard to come by in the computer industry. So much is paved over every year that knowledge becomes arcane quickly in the name of advances. But consistency is also a value worth preserving, and so a good share of the 3000 community is still using the system HP built, then dropped from its 21st Century sales plans.
That constant use is what makes a recent addition to our archives more than a relic. Today we received a copy of the Using The HP 3000 "an introduction to interactive programming," circa early 1979. (Thanks to Roger Smith, IS Director of Tulare County Office of Education, for the addition; click on any photo here for a larger version.) In that springtime of 1979, the HP 3000 had two means of interactive access: the 2645A terminal and a hardcopy-only cousin, the 2635. But the commands from that MPE III version of the OS still run today, nearly 30 years later.
That's more than historic. It borders on legendary — but it's also why HP had to admit the 3000 business was too big for it to maintain. Too large in time-span, anyway.
HP wrote this book for the "professional computer programmer" as well as "someone who has never seen a computer before. And we know from experience that both categories are well represented in the HP 3000 user base."
To be sure, the last part of that sentence will be viewed as history. You may not be able to find someone who has never seen a computer before. However, it's not that hard to find someone who has never seen a business server before, and that's what kind of computer the HP 3000 remains today.
The manual is fun, and full of reminders of how much easier programming has become in 29 years' time. The sections on how to delete a line or characters within a line make me wonder how anyone had time to compete a project. But then projects deadlines were measured in months instead of weeks for most customers. Plus, completing a project on the first attempt was a genuine measure of success. Still, all that control-X and control-H had to slow down the creative process. Maybe it was like learning to finger the keys before you compose the concerto.
This document had some unfortunate choices of layout, the worst being the use of yellow type to indicate the HP 3000 responses to commands. Like everybody in 1979, HP was learning how to teach its customers about the use of this new tool. Interactive computing was the reason that the HP 3000 took off in an era dominated by IBM mainframes, and HP probably wanted to show how lively the interactive experience could appear. Later on, you could actually see yellow letters in HP responses, on certain types of terminals.
Each year from 1979 to the present, HP has worked to ensure the largest number of HP 3000s could run the programs crafted with the help of this manual and successors. That makes the 3000-using universe unparalleled among any computer launched in the 1970s. Rogers said that the software written in the 1980s ran during this century.
When I started here 1985 we had a Series III and a Series 44. We then upgraded the 44 to a 48 and changed the III to a Series 70. The next step was changing both to a 960. The last one we got was the 969KS/200.
We still had software we wrote on the Series III that was still running on the 969. Amazing.
When it adopted a go-go grow business mantra in the 21st Century, HP couldn't find the motivation to keep up anymore with its 3000 legend. Perhaps a dedicated base of users, full of expertise and experience, can carry on into a fresh decade of the 21st, starting in 2010. Whether it's a manual for an HP storage device, or a programming aid written before Ronald Reagan took office, nothing seems to expire altogether in your community. How many others can claim that kind of history?
Posted by Ron Seybold at 03:26 PM in Hidden Value, History, Homesteading, User Reports | Permalink | Comments (0)
August 14, 2008
Measuring the 3000's Posix empire
These past few days have seen me working on a project to process files in the HP 3000's HFS Posix directory. My Series 917LX is running under 6.5 PowerPatch 3. What is the maximum size a 3000's Posix structure can be?
HP's community liaison to the 3000 world Craig Fairchild replies:
There are no system enforced limits on directory depth or absolute system path name. Most interfaces won’t gracefully handle pathnames longer than PATH_MAX which is 1024 characters. So pick a number (say 1024) and return an error if you ever see a path longer than that.
As an addendum, Fairchild revealed more about how HP set up Posix the interface most like Unix, on the 3000.
As an aside, even though the CI’s command buffer size is much smaller than PATH_MAX, you can still use relative naming to perform any operation on any file or directory, no matter how long its absolute path name. There is a limit on the maximum length of any one directory component (255 characters in an HFS directory, 16 characters in the root, account and group directories) which is well within the CI command buffer length.
I find that the ability to have names that are longer than eight characters, and a hierarchical directory structure that allows for a more logical structure, as some of the compelling reasons not to be limited to the 8.8.8 MPE namespace.
Posted by Ron Seybold at 06:44 PM in Hidden Value, Migration, News Outta HP | Permalink | Comments (0)
July 31, 2008
Storage on the biggest 3000s
Somewhere in Minnesota, a farm of more than 30 HP 3000s tracks airline ticket transactions. The farm, one of the biggest collections of 3000 horsepower, uses plenty of storage. How much is hard to say, since the operation is under wraps and not open to press coverage.
But N-Class HP e3000s need storage that outstrips the requirements of most other HP 3000 models. A customer recently asked about options for data storage on these big systems.
We are looking at using a N-Class system and I’m trying to find out what storage options are available. What kind of disc options are being used out there? I understand that HP does not support EMC storage on the N-Class, but is anyone using it?
Craig Lalley, whose EchoTech consulting firm specializes in putting newer and better storage into 3000 shops, was at the ready with answers.
Lalley, who consults along with Jeff Kubler from their US Northwest HQ, said
The N-Class has native fibre, and while the EMC storage devices are not supported, I guarantee they work just fine. (I do think the performance of HP's XP1024 arrays are much better).
The N-Class can connect to a VA7410. This storage device supports HAFO (High Availability Fail Over) and is rated at 35,000 I/Os per second. It has 2GB of cache. It is a Virtual Array, and is about the size of a MOD20, about 10U. (That's a guess).
The other options are
- The XP512, which does about 300,000 I/Os per second; it is much older and about the size of one large refrigerator.
- The XP1024 or XP128 are rated at 450,000 I/Os per second and are a great option today.
- The XP128 has less expansion capabilities that the XP1024, but the same core, and can go to 64GB of cache.
As for pricing, it depends on how much space you need.
The payoff between a VA7410 or an XP128 is about three VA7410s — which means it is less expensive to purchase one XP128 than three VA7410’s.
Posted by Ron Seybold at 07:51 PM in Hidden Value, Homesteading, User Reports | Permalink | Comments (0)
July 18, 2008
MPE shell expands, with explanation
Way back in the middle 1990s HP added the Posix shell to the HP 3000, so customers who had Unix and MPE running in the same shop could train operators and managers with a single set of commands. Posix was a plus, making the 3000 appear more Unix-like (which seemed important at the time).
Over the years, however, Posix has been a feature to be discovered for most 3000 managers and operators. (By the way, the computer's operating system was renamed from MPE/XL to MPE/iX just for this added Posix feature).
But enough history; Posix is still on the 3000 and remains a powerful interface tool, an alternative to the CI interface that HP created for the system. You can even call Posix commands from the CI, a nifty piece of engineering when it can be done. That's not always possible, though. A customer wanted to know how to "expand wildcard shells" using Posix. He tried from the CI and had this story to relate.
:LL /BACKUPS/HARTLYNE/S*
ls: File or directory “/BACKUPS/HARTLYNE/S*” is not found
So how do I do this? I need to be able to tell tar to archive all of the reels of a STD STORE set via a regexp. It does not work in tar, and it apparently does not in ls, so I speculate that there is something special about the innovation of Posix utilities from the CI that I am not aware of. What is it?
Jeff Vance, the 3000 CI guru at while at HP who now develops at K-12 app vendor QSS, had this reply:
Wildcards on most (all) Unix systems, including Posix implementations, are done by the shell, not the individual programs or in-lined shell commands, like ls in your example. A solution is to run the shell and execute ll from within.
Greg Stigers then supplied the magic Posix shell command to do the expansion:
SH.HPBIN.SYS '-c "/bin/ls -l /BACKUPS/HARTLYNE/S*"'
In a note of thanks, the customer said that getting the answer by working with the HP 3000 community's newsgroup "is like having an entire IT department right outside my door."
An interesting footnote if you've read this far: The Posix shell for the 3000 is one part of the operating system not built by HP. The shell was licensed by HP from MKS, and Hewlett-Packard pays royalties to MKS so Posix can work inside of MPE/iX. That's an issue that OpenMPE and HP will have to clear up before any emulation or source-license arrangements can be worked out.
For now, enjoy using Posix as a way to get familiar with the commands in Unix systems. In the great majority of instances, these commands are the same.
Posted by Ron Seybold at 06:53 PM in Hidden Value, Homesteading | Permalink | Comments (0)
July 09, 2008
Going cold turkey, coming on board
Some stay, and some just have arrived. After Gary Sielaff told the community he was about to unplug his HP 3000 — and was preparing to hear screams from users about the replacement Windows system's Blue Screen of Death — a new user asked about basic database backup.
I just started learning an HP 3000 — I guess we are going in different directions. I have an HP 3000 connected to an Win32 IIS box. How would I go about backing up the database before I go running DOALL commands?
Matt Perdue replied:
Start out by doing a test:
:FILE STORDISC;DEV=DISC :STORE @.PUB;*STORDISC;SHOW.
This should backup all the files in the PUB group of the account you're logged in currently and if it works will prove your version of STORE can do a store to disc backup. If it doesn't work do: :FILE STORFILE;DEV=TAPE :STORE @.PUB;*STORFILE;SHOW and the operator (perhaps you) will have to put a tape in and respond to the tape request on the console.
Substitute the "@.PUB" for the database name (e.g. ARDB@.DATA if your database is named ARDB and it's in the DATA group) and store your database to either disc or tape.
You can read the full thread of comments, including Gary's, at the 3000 newsgroup archives.
Perdue, a member of the OpenMPE board, added some general advice for the new HP 3000 user:
See docs.hp.com for the MPE/iX documentation or use the link off HP's Jazz Web site at http://jazz.external.hp.com or just directly to
http://www.docs.hp.com/en/mpeixall.html.
Look for "MPE/iX System Utilities Reference Manual" for the version of the operating system on your machine. To tell that, do a SHOWME and the version will be shown on a line such as:
RELEASE: C.75.00 MPE/iX HP31900 C.45.05 USER VERSION: C.75.00
or
RELEASE: C.70.01 MPE/iX HP31900 C.39.06 USER VERSION: C.70.01
The first example is 7.5 and the second is 7.0
Posted by Ron Seybold at 11:38 PM in Hidden Value | Permalink | Comments (0)
July 02, 2008
Create PDF files from 3000 output
Last year we updated the abilities of the Sanface Software solution to create PDF files out of HP 3000 output. But there are other ways and tools to do this, a task that's become essential to sharing data reports between HP 3000s and the rest of the world's computers.
On the HP 3000 newsgroup, a veteran 3000 developer asked,
Has anyone any experience involving taking a file in an output queue and creating a PDF version of it?
"We use text2pdf v1.1 and have not had any problems since we installed it in October 2001," says Robert Mills of Pinnacle Entertainment. "I have e-mailed a copy of this utility and our command file to 27 people. Never knew that so many sites wanted to generate PDFs from their 3000s."
The program is a good example of 3000 source code solutions. This one was created as far back as the days of MPE/iX 6.0, a system release which HP has not supported since 2005.
Lars Appel, the former HP support engineer who built such things on his own time while at HP support in German, has source code and a compiled copy of the utility.
Such solutions, and many more, are hosted on the Web server at 3K Associates, www.3k.com. Check the Applications Ported to MPE/iX section of the Public Domain Software area at 3K's Web site.
You'll also find a link to GhostPCL up at the site, another Appel creation, one which he describes as
A program that reads PCL input files and converts them to a variety of output formats, including PDF or JPEG, for example. Combined with my little FakeLP Java program, you might even use it to capture MPE/iX network spooler output and generate PDF or JPEG from an MPE/iX spoolfile.
Open source solutions like these have been an HP 3000 community tradition. Way back in 2000, we reported in the NewsWire about that FakeLP Java program, helpful in getting text2pdf to do its PDF magic. (For the record, both Mark Bixby and Appel are still working in the 3000 community, but not for HP; Bixby joins QSS this month, and Appel has been helping in support for the producer of the database Eloquence, Marxmeier Software)
A roadblock to using the text2pdf program: the spoolfiles had to be in text file format to work with it. But Lars Appel offered a free solution to make 3000 spoolfiles that don't rely on CCTLs ready for their PDF closeups:
"I have a small Java program that listens to a given port, for example 9100, and 'pretends to be a network printer' i.e. gets all the data sent and writes it to a flat file. This might be a start, as OUTSPTJ.PUB.SYS should have converted CCTL to plain PCL when sending to a JetDirect printer. However, this little Java program is just a quick and dirty experiment. Use at your own risk; it worked on my 3000, but your mileage may vary."
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cut here _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
// FakeLP pretends network printer to capture spooler PCL output
import java.net.*;
import java.io.*;class FakeLP {
public static void main( String args[] ) throws Exception {
int port = 9100;
int next = 1;if (args.length > 0) port = Integer.parseInt(args[0]);
if (args.length > 1) next = Integer.parseInt(args[1]);ServerSocket serv = new ServerSocket( port );
while (true) {
System.out.println("FakeLP listener ready");
Socket sock = serv.accept();
byte[] buf = new byte[4096];
String name = "F" + (next++);System.out.println("Capturing spoolfile to " + name);
InputStream si = sock.getInputStream();
OutputStream fo = new FileOutputStream(name);for (;;)
{
int got = si.read(buf);if (got != -1)
fo.write(buf, 0, got);
else
break;
}fo.close();
si.close();
}
}
}
Posted by Ron Seybold at 07:25 PM in Hidden Value, Homesteading, Web Resources | Permalink | Comments (0)
June 26, 2008
A way to report screw-ups
When a session program aborts on the HP 3000, the users don't tell us. Is there a mechanism to report user screw ups?
Matt Perdue of the OpenMPE board and Hill Country Technologies replies:
At one of my clients' sites, all online programs (defined as used by anyone acting interactively with the application) have been coded to go to a common abort procedure when IMAGE, VPlus or other file errors cause the program to want to abort, at least somewhat gracefully. That section closes the terminal, calls DBEXPLAIN or prints some kind of status message and sends this information and what section caused the abort to the console. Each section of code starts with a line such as MOVE “6004-DELETE” TO ABORT-SECTION.
Of course there is the random, unprogrammed-for abort. Not much can be done about that, except write a transaction log record to a file or dataset so you can track the exact progress and last point a user was in before the abort.
I also have a mechanism to control users logging off gracefully for backups. All just part of learning and developing ways to manage remote users since 1985! And it makes my life easier in the process.
Each screen times out at five minutes, taking the user back to the previous screen or menu. When the main menu is reached, the program checks the setting of a log off control record and if set to “Y” the program will log off, very gracefully. I have another program that runs 20 minutes prior to the backups, setting the control to “Y”.
With users scattered at dozens of locations in different cities this is the only way to painfully insure everybody is logged off for the backups. It’s automatic. Another program runs in a series of jobs after the backup that sets the control to “N” so the users can log on and stay logged on.
One application has users performing critical update tasks at various times, though not an IMAGE “critical update” for search key items. These critical updates involve changes to multiple datasets and if I need to force a user to be logged off I don’t want to do that in the middle of a critical update the user may be performing. DBBEGIN and DBEND don’t help any in this case as an ABORTJOB #Snnn will complete an individual database call, but not take into account the DBEND hasn’t been reached.
The solution is to have the program at the start of a critical update write a record to a dataset indicating the user info (LDEV, date, time, program section, “critical update”) and to clear this record when the update is completed. A management screen is programmed to check this dataset and display the status of each user by LDEV and I can instantly see who is in critical update and who is not.
I also use this function to have at the start of each screen a user goes into write a dataset record indicating what screen they are in (LDEV, date, time, screen name, other related data). My monitor screen tells me what screen each user is in at any time and if they’re in a critical update. This works great at one site to see if anyone still logged on after 5 PM is really doing any work — if not, I set the log off flag to “Y” so they get logged off after 5-10 minutes. The log off flag is set to “Y” or “N” by the push of a function key in the management screen — easy!
Posted by Ron Seybold at 11:37 AM in Hidden Value, Homesteading | Permalink | Comments (0)
May 19, 2008
Database recovery delivered
All databases can become useless. That is, they suffer some kind of corruption or acquire an unwanted flag. The latter problem came to visit an HP 3000 site over the weekend. The solution to repair a 3000 database ultimately arrived from Adager, the resource the 3000 community calls when trouble needs fixing pronto. James Dunlap called out to the community, via the 3000 newsgroup:
I was increasing a dataset’s capacity using DBCPLUS and thought my (remote) session had hung after already doing PER COM, so I aborted the session. The bad news was that we don’t have a current backup of the database, and now the “restructuring” flag is set and the DB is “bad.”
That's HP's DBChange Plus utility that Dunlap is using, a tool HP obsoleted. In this situation, DBCPlus played a part in making the database bad. Old tools might be better than no tools; HP tried to put its customers in touch with third parties in 2000 when it dropped DBCPlus.
Dunlap tried to make a copy of the database too, and the copy was also “bad”. He reached out to the community through the Web, although finally the solution came through a call to Adager.
Resetting the database flag advice came from Craig Lalley of EchoTech:
You can reset the "restructuring" flag. There are several ways to do it, none come to mind here in the airport, but I would start with DBUTIL. Do you have Adager, or [Bradmark's] DBGeneral? It is a two bit marker that you should be able to find with DEBUG.
But if you're not familiar with running DEBUG on an HP 3000, the tool can become a tar pit. You'll want expert advice to fix a database problem using DEBUG, a tool on every HP 3000. Custom programming might have solved the problem, according to Brian Donaldson. But he couldn't resist fundamental advice on database procedure: "I don't mean to sound unfeeling about your predicament, but you are getting everything you asked for -—"
1) Not having a backup copy of the DB prior to making structural changes
2) Not using Adager for structural changes to begin with
3) Doing these structural changes across a remote line is just asking for trouble!You can write a quickie Privileged Mode program to FOPEN the Image root file, read label zero and reset offset zero to a value of "FW" (which means database okay and accessible.) Definition of the root file is in the blue Image/3000 Handbook.
Donaldson's fix carried three notable pieces of information. First, there's the use of a Priv Mode program, written to work in the deepest level of MPE/iX. A process not for many a 3000 owner. Then there's the Image/3000 Handbook, a community resource long out of print but on the shelf of savvy, seasoned 3000 experts.
Then there's that FW flag. The FW stands for Fred White, co-creator of Image. After leaving HP, White worked at Adager for many years before retiring. And so Dunlap found his answer at Adager:
Rene Woc at Adager walked me through the necessary steps to fix via Debug. (FW did the trick.) That was not only kind of him, but downright gracious, considering that we don’t have Adager (yet!). Thanks to all who helped.
HP 3000 help remains available through the Web. It is likely to be around long after HP closes its support doors for the system, delivered by way of third parties like Adager. "We remain surprisingly busy," Woc told me in a call last week. He monitored HP's Webcast last week online, staying up to date with HP's plans to curtail 3000 support.
Dunlap reported his repair process, a resolution via Adager expertise:
Posted by Ron Seybold at 12:48 PM in Hidden Value, Homesteading, Migration, Web Resources | Permalink | Comments (0)
May 12, 2008
Escaping an HP 3000
We’re having trouble entering an escape character in MPE’s editor. Is there a trick to it? We’re trying to change the instructions it sends to a printer.
Lars Appel replies:
I typically use some form of change or changeQ command when texting a file that contains escape characters and before saving it again.
:editor
/text myfile
/changeQ ‘27 to ‘126 in all
... edit file ...
/changeQ ‘126 to ‘27 in all
/keep
/exit
Using something like ~ (ASCII code 126) during the edit session. Of course, it only works if there is no ~ normally in the file.
Dave Powell adds:
Nowdays I keep permanent human-readable env files in a separate group, so conversions are one-way only and I never have to change esc back into ~. When I got tired of changing ~ into esc I wrote a simple COBOL program to do it. It also knows how to filter out my comments, so I can make my human-readable env files even more readable.
Craig Lalley adds:
Turn on display functions first.
Posted by Ron Seybold at 06:13 AM in Hidden Value, Homesteading | Permalink | Comments (0)
April 30, 2008
Linear advice saves tape storage solution
A 3000 community member who is obviously homesteading asked for help installing a Digital Linear Tape device today. His question to the HP 3000 newsgroup was "Why can't my Series 939 see the DLT8000 I just brought into the shop and mounted successfully?"
A couple of tape experts had good solutions to assist Joe Barnett, but both storage guru Denys Beauchemin and HP's Jim Hawkins couldn't resist much bigger advice: Migrate off that HP 3000. While Barnett contemplates that outsized project, he's got little to spark such an adventure — if his only problem is storing more data from a growing disk farm.
The experts shared a wide range of counsel, from the basic of "check that media" and "tape heads wear out on DLT8000s" to "they haven't made that generation of DLT drive in five years" (a period Beauchemin likes to call a lustrum, accurate but arcane English.)
When Hawkins stepped in to comment on Beauchemin's advice, the combination of counsel was another reason to believe in the power of the 3000 community.
Beauchemin, who's best known as Denys in the 3000 world, set off with an opinion, then followed with details. JIM of HP commented.
Denys: Unfortunately, this is the exact issue facing homesteaders and others who are delaying the migration off the HP3000, especially if they have pre-PCI machines. The hardware to run it can only be found in antique stores and can be of varying level of readiness. You have many options open to you, but as time goes by they will more difficult to implement.
1- Look for another DLT8000 or a DLT7000, either one will work and you will not get any performance benefit from either one over the DDS-3, just more storage on one tape.
JIM >> Agreed. Also make sure it has HP branded firmware; within the last two years had a painful set of System Aborts at a large customer due to semi-random walks through driver state machines initiated by non-certified firmware.
Denys: 2- Consider getting more DDS-3 drives.
JIM >> Agreed. We have one medium size N-Class with something like 12 DAT24 drives -- they do either a 4x3 or 3x4 parallel storeset. No messing with “reel” switches.
Denys: 3- Consider getting an HVD to SE/LVD SCSI converter and then trying a DDS-4 device.
JIM >> Don’t think that is an option since about 5.5/6.0 the “scsi_tape_dm” DDS driver will not “bind” to the F/W SCSI driver. I think you may only configure the DLT (scsi_tape2_dm) driver “under” the NIO F/W SCSI HBA (fwscsi_dam). As previously posted DAT40 with DAT24 media has worked well for some sites but DAT40 with DAT40 media is only supported on A/N-Class.
Denys: 4- Move to a PCI HP 3000 (the crippled A series or a small N-Class), then use newer LVD devices.
JIM >> Agree that PCI Systems will at least enable the usage of much newer “used” equipment and even some new stuff, if you want to buy a XP10k/12k ;-).
Denys: 5- Consider migrating from the HP 3000. (This is the only long term solution and where I have been spending my time for the last several years. The newer server technology is light-years ahead of where the 3000 stopped and the new storage devices are incredible, fast and cheap. The companies that we migrate are just amazed at the new hardware.)
JIM >> Agreed
Hardware, of course, is not the biggest challenge in migration. Moving programs, processes, training for new environments— that's where the work really begins. Besides, backing away from DLT is not all that uncommon in the 3000 community. At one point Denys told Joe about a needed interface, "HVD-SCSI is so last century." True enough. But storing to tape has its creaky looks, too. STORE To Disk is successful and better at carrying a 3000 into the next decade.
Posted by Ron Seybold at 06:39 PM in Hidden Value, Homesteading, Migration, News Outta HP | Permalink | Comments (0)
April 11, 2008
Deleting bad system disks
As HP 3000s age their disks go bad, the fate of any component with moving parts. Even after replacing a faulty drive — which is not expensive at today's prices — there are a few software steps to perform. Wyell Grunwald explains of the failed system (bootup) disk
Our disk was a MEMBER in MPEXL_SYSTEM_VOLUME_SET. I am trying to delete the disk off the system. Upon startup of the machine is says that LDEV 4 is not available. When going into SYSGEN, then IO, then DDEV 4 it gives me a warning that it is part of the system volume set — cannot be deleted. I have done an INSTALL from tape (because some of the system files were on that device), which worked successfully. How do I get rid of this disk?
Gilles Schipper of support provider GSA said that INSTALL is something to watch while resetting 3000 system disks.
Sounds like the install did not leave you with only a single MPEXL_SYSTEM_VOLUME_SET disk.
Could it be that you have more than one system volume after INSTALL because other, non-LDEV 1 volumes were added with the AVOL command of SYSGEN - instead of the more traditional way of adding system volumes via th VOLUTIL utility?
You can check as follows:
SYSGEN
IO
LVOLIf the resulting output shows more than one volume, that's the answer.
He offers a repair solution as well.
The solution would be as follows:
1. reboot with:
START NORECOVERY SINGLE-DISC SINGLE-USER
2. with SYSGEN, perform a DVOL for all non-ldev1 volumes
3. HOLD, then KEEP CONFIG.SYS
4. create new SLT.
5. perform INSTALL from newly-created SLT.
6. add any non-ldev1 system volumes with VOLUTIL. This will avoid such problems in future.
If you do see only 1 system volume with the LVOL command, the only thing I can think of is that VOLUTIL was used to add ldev 4 to the MPEXL_SYSTEM_VOLUME_SET after the install.
Posted by Ron Seybold at 05:48 PM in Hidden Value, Homesteading | Permalink | Comments (0)
April 10, 2008
Tape backup: Set DLT to beat DDS
Backing up enterprise-grade 3000s presents more interesting choices today than 5-10 years ago. Back then DDS had only two generations, neither of which were reliable for certain. A DDS tape used to be the common coin for OS updates and software upgrades. The media has advanced to a DDS-5 generation, but Digital Linear Tape (DLT) has a higher capacity and more reliability than DDS.
When a DDS tape backup runs slower than a DLT, however, something is amiss. DLT is supposed to supply a native transfer rate of 15 MBps in the SureStore line of tape libraries. You can look over at an HP PDF datasheet on the SureStore, even certified by HP for MPE/iX, at this link.
HP 3000 community partners such as Genisys and Bay Pointe and Pivital Solutions offer these DLTs, and Orbit Software has an "order with our backup software" option, too. But at an estimated cost of about $1,300 or more per DLT device, you'll expect them to beat the DDS-4 transfers of 5 MBps.
HP 3000 customer Ray Shahan didn't see the speed he expected after moving to DLT and asked the 3000 newsgroup community what might be wrong. Advice ranged from TurboStore commands, to channels where the drives are installed, to the 3000's bandwidth and CPU power to deliver data to the DLT. HP's MPE/iX IO expert Jim Hawkins weighed in among the answers, while users and third-party support providers gave advice on how to get the speed you pay extra for in DLT.
Dave Gale wrote in an answer that device configuration and CPU are potential problems:
If you are using a DLT it likes to get data in a timely manner. Otherwise it will do the old 'shoe shine'. This means that other devices on the line can affect the bandwidth on the channel and starve the DLT. If you are using something like RoadRunner, then the CPU can be a real factor in this equation (especially single-CPU machines). So, you may not only want to check the statistics portion of the report, but monitor your machine during backup with Glance or SOS.
Gilles Schipper of support company GSA said that a TurboStore command is essential. "If HP TurboStore, are you using MAXTAPEBUF option on STORE command?"
HP's Hawkins said channel configurations of backup devices are key to ensuring that DLT tops the DDS speed:
Generally this shouldn’t happen. It might happen if the DLT and disc are on the same channel while the DAT/DDS was on a separate one. Might also happen with large numbers of small files on semi-busy system as some DAT are better at start/stop than DLT. If you are running STORE the STATISTICS option can give a broad indication of throughput for A/B comparison.
EchoTech's Craig Lalley, who's made a business out of upgrading HP 3000 storage devices, said that even when a DLT is moved to a different channel than the disk drive, you can do more. "The easiest thing to do is run the backup in the C-queue. Also, try turning software compression off."
Allegro Consultants' Stan Sieler offered a basic remedy. "I'd try a new DLT tape. I've found that helps at times."
3000 user Jack Connor testified to how much faster a DLT backup becomes with the best software parameters for backup commands. "MAXTAPEBUF and INTER can make a major difference," he said. "I recently had a backup to DLT cut from 7 hours to under 2 by just adding these parms."
We recently ran an article about ScreenJet's advice about large backups which skip the tapes altogether. STORE-to-disk (STD) counts on the reliability of a second disk mechanism, but DLT tapes have moving parts and magnetic properties, too. They just seem to cost a good deal more than disks which hold 40 times more than a DLT tape.
Posted by Ron Seybold at 06:51 PM in Hidden Value, Homesteading, User Reports | Permalink | Comments (0)
March 21, 2008
More storage tips from Houston
ScreenJet's Alan Yeo had advice for 3000 storage solutions at this month's GHRUG International Technology Conference, counsel for those with limited budgets or no budget at all. Disk drive prices have fallen so far that a half-terabyte $600 RAID-class drive can be had for HP 3000 use, he said.
Even an HP-branded drive for the HP 3000 costs under $500 by now, although it will offer less than a tenth of that capacity. A 36GB HP drive is priced at about $400 on the community's market, "so long as you don't want it tomorrow. Getting enough disk space to do a STORE to Disk should not be a problem," he said.
Backup techniques can have an impact on costs to upgrade storage options, too. "You can always look at splitting your backup up, if you don't have enough disk space. Instead of doing @.@.@ you split it into chunks, if you don't even want to spend $400 for more disk."
3000 managers can get around the problem of backing up files of 4GB or more with some backup products "which let you specify extent size you want to use, so they won't go up to 4GB," Yeo said. "The other approach we've adopted with HP STORE is to actually split up the backup, so the backup runs in three or four steps, each one of them not exceeding the 4GB limit."
Breaking a backup into chunks also means "it's an awful lot quicker to get something back," Yeo added.
Posted by Ron Seybold at 09:25 PM in Hidden Value, Homesteading | Permalink | Comments (0)
December 06, 2007
How to do a final 3000 shutdown
A few weeks ago, a customer asked how to turn off an HP 3000 once and for all. While this is a sad time for the IT expert who's built a career on MPE knowledge, doing a shutdown by the numbers is in keeping with the rest of the professional skill-set you can expect from a 3000 manager.
Chris Bartram, who has launched and stocks a Technical Wikipedia (TWiki) for the 3000, offered all the details of turning off an HP 3000. "I have just performed last rites for a 9x8 server at a customer site," he replied, "and have been through the exercise a couple times before."
His steps did not include SOX requirements, but "might be useful," he said in his usual modest introduction. There are 10 steps Bartram details before switching off the 3000's power button.
Bartram reported that he first purged all accounts except sys, hpspool, and 3000devs (and had to log off all jobs, shut down the network, and disable system UDCs to do that). Then:
2) Reset/blanked all system passwords (groups, users, accounts)
3) Purged all groups from SYS account that I could (aside from in-use groups) as well as all users except MANAGER.SYS,OPERATOR.SYS, MANAGER.HPSPOOL.
4) Went through PUB.SYS listf (file by file) looking for anything that might be a job stream or contain user data (or anything not critical to keeping the system up) and PURGEd it
5) Went into VOLUTIL and condensed my discs
6) Created a group called JUNK.SYS (you would need to do this on each volset; this box only had the system vol set)
7) Wrote and ran a short script that copied NL.PUB.SYS (the largest file remaining on the system) into JUNK.SYS in a loop using filenames A####### and X####### until all disc space was used up
8) Typed the command PURGEGROUP JUNK.SYS
9) Went into NMMGR and changed IP addresses on the box to something bland/different; including the default gateway (also deleted any entries in the NS directory if there are any)
10) Sequentially PURGE @.GROUP.ACCT for all groups (leaving PUB.SYS until last)
11) Shut down the box.
I am reminded of the line from Citizen Kane, which I enjoyed on Turner Classic Movies this week. "Then, as it must for every man, death came to Charles Foster Kane." Nothing escapes death, but a proper burial seems in order for such a legendary system.
Posted by Ron Seybold at 10:35 AM in Hidden Value, Homesteading, Migration, Web Resources | Permalink | Comments (0)
October 31, 2007
HP releases critical patches to prevent corruption
HP released critical patches today which repair problems in the HP 3000 file system, a fix for any Large Files — which in rare circumstances, can corrupt data on a 3000. While the odds of the bug corrupting data in one case are technically 800 million to 1, HP is recommending that all customers who use MPE/iX 6.5, 7.0 and 7.5 install one or both of the patches at the earliest opportunity. The patches can be staged, but they will require a reboot of the 3000, an event that is rare at many sites.
The HP repairs, announced today just after 10 AM Pacific time through the HP 3000 newsgroup, the OpenMPE mailing list and HP Web pages, include the first fix for the 3000's millicode in 16 years, according to Bill Cadier of HP's MPE/iX labs. The millicode patch, which replaces the MILL.LIB.SYS file, is only needed if a customer's applications access mapped files and utilize Large Files.
Large Files are any which are 4GB or greater in size. HP introduced the feature in March, 2000. Applications which have not been modified since March 29, 2000 should be safe from the potential corruption. The possible corruption can occur if any one of five of the last six bytes of a Large File fail to transfer correctly.
Customers who sort these types of files, using calls to HSORTOUTPUT or SORT.PUB.SYS, are at risk according to the HP notice for the patches. The potential risk and the repair surfaced when an HP 3000 customer notified HP of a data corruption issue.
Some customers will have applications which must be recompiled and re-linked to eliminate the problem. An application that uses the HPFOPEN intrinsic, and creates or uses Large Files, is a candidate for this kind of repair. In some instances a customer must locate and use the application's source code for this kind of re-compile. HP defined the procedure as an install of the millicode patch, then a recompile of the application in some cases.
The majority of the 3000 community will be installing patch MPENX11, which is available to all 3000 sites at HP's IT Response Center Web site and also through telephone support. Customers with applications using Large Files will install patch MILNX10. But the millicode patch is important, too, because a sort of a Large File of 2-3 GB will create a temporary Large File of more than 4GB, where the risk of corruption is at hand.
HP's strong advice is for customers to install both patches. [There is] a high priority for MPENX11, since it is the patch that addresses the issues with SORT and the MPE/iX OS. However, MILNX10 is also important to address the possibility of continuing to use the millicode in question. Even if a customer is not using Large Files today, there is no guarantee that they won't experience growth that will cause their files to cross into the large range at some later time.
The primary link to details of the critical process has been posted at HP's e3000 Web site, www.hp.com/go/e3000. At that page, a customer letter link as well as a link to the HP Jazz Web server provides a detailed page with explicit instructions — as well as a new HP-built utility to detect Large Files on an HP 3000.
HP's announcement takes place four years to the day that the company ended sales of the HP 3000. The development of this type of patch, a binary-level repair, will continue throughout 2009 and 2010, according to HP's 3000 community liaison Craig Fairchild.
While it might be easy to overstate the crucial directives for the patches — HP has rarely announced this kind of bug with repairs and white papers already available — the data corruption is very rare, Fairchild said.
In our evaluation, we've been looking at this problem and analyzing HP's [own] code to try to determine what's at risk," he said. "It's very uncommon to be working with Large Files. It's even more uncommon to be working with Large Files using user-mapped access to those files. It's even more rare yet again to be doing these very small data movements that happen to be at the very end of a space."
Fairchild explained that what an application is doing IO to a large file, "you're not doing it in six-byte chunks, or five bytes or four bytes, three or two." Most common is IO one page at a time, which presents no risk for corruption at a minimum of 4,000 bytes.
HP has a FILECHEK utility, just developed, to scan for the Large Files on a system. But the LINKEDIT tool, already on every 3000, can help assess the risk to customers with home-grown or in-house applications.
"LINKEDIT can provide a list of all the external procedures, calls by a program, or an XL or RL library," Fairchild said. "If when looking through the procedures, HPFOPEN is not called by a program, then you know that application is not at risk."
Posted by Ron Seybold at 12:16 PM in Hidden Value, Homesteading, Migration, News Outta HP, Newsmakers, Web Resources | Permalink | Comments (0)
October 29, 2007
Comparing next solutions for 3000s
When a 3000 utility goes dark — because its creator has dropped MPE/iX operations, or the trail to the support business for the tool has grown faint — the 3000 community can serve up alternatives quickly. A mature operating system and experienced users offer options that are hard to beat.
Such was the case last week when Walter Murray, a former HP development engineer now with the California Dept. of Corrections IT staff, wondered about an alternative for Aldon Computing's SCOMPARE. That development tool has compared source files for more than 15 years in the HP 3000 world. There was no record of a valid license on the Murray's server for How now to compare, Murray wondered.
Not for long. Within 24 hours the experts on the HP 3000 mailing list offered six alternatives to the now-defunct SCOMPARE. Resource 3000 partner Allegro Consultants offers a free MPE/iX solution in SCOM, as verified by Allegro's Steve Cooper:
And, it's free, too!
www.allegro.com/software/hp3000/allegro.html
and scroll down to "SCOM."
Other candidates included a compare UDC from Robelle, GNU Diff, diff in the HP 3000's Posix environment, DiffDaff on Windows, and more.
Bruce Collins of Softvoyage offered details on using diff in Posix:
run diff.hpbin.sys;info="FILE1 FILE2"
The file names use HFS syntax so they should be entered in upper case. If the files aren't in the current account or group they should be entered as /ACCOUNT/GROUP/FILE
Donna Garverick-Hofmeister, after verifying that Aldon is still in business, but not the MPE/iX business, offered a tip on using Robelle's compare UDC:
Regarding Robelle's compare. Being a scripting advocate, I strongly recommend adapting their UDC into a script.... and take a few seconds to add a wee bit of help text to the script, to make life more enjoyable for all (which *is* the reason for scripting, yes?)
In Microsoft's Visual Studio lies a tool called windiff, reported Larry Simonsen. Another former HP engineer, Lars Appel, brought up a Linux option in the KDE development environment:
On Linux, if you are using KDE, you might also find Kompare handy...
http://en.wikipedia.org/wiki/Kompare (see screenshot)
On MPE, as others mentioned, there is still the Posix diff in two flavours: the HP supplied in /bin and the GNU version that lives in /usr/local/bin. The former allows two output formats (diff and diff -c), the latter also allows “diff -u” in addition.
Oh, regarding /bin/diff on MPE... I sometimes got “strange” errors (like “file too big”) from it when trying to compare MPE record oriented files. A workaround was to use tobyte (with -at options) to created bytestream files for diff’ing.
Appel was even able to address a concern of Murray's: "Then there’s the problem of comparing numbered files, like COBOL source files, when one or both files have been renumbered."
With Posix tools, one might use cut(1) with -c option to “peel off” the line number columns before using diff(1) for comparing the “meat”. Something in the line of ... /bin/cut -c7-72 SourceFile1 > BodyText1.
Murrary reported back at the end of the 24 hours to say that Aldon knew of HP 3000s and the licensing mechanisms, "and it sounds as though they are still willing to sell SCOMPARE and support contract for it." Which says something about the vigor of the 3000's ecosystem, six years after HP predicted its demise.
Posted by Ron Seybold at 11:03 PM in Hidden Value, Homesteading, User Reports | Permalink | Comments (0)
October 12, 2007
Audit-proofing IMAGE databases
Since HP 3000s work as mission-critical servers, the systems must weather IT and regulatory audits. The 3000 is capable of passing, of course, even in the era of HIPAA and SOX challenges which are more stern than audits of the past.
But establishing a database update procedure can lead to a gap in the security of an MPE/iX system. A discussion this week on the HP 3000 newsgroup identified the problem and searched for a solution. But many HP 3000 managers must take a hard look at how their users employ System Manager (SM) privileges. In the most strict accounting, SM privileges can expose a database.
Privileges can become a neglected aspect of 3000 operations, especially if the system's admin experts have moved on to other companies or duties. Mike Hornsby of Beechglen explained that the SM users which his support company serves have disturbed the integrity of 3000 databases. It's easy to do accidentally. The SM user can also update a 3000 database — a capability that can run afoul of some audits.
The database's security might be compromised through SM privileges, Hornsby explained, but it depends on the meaning of "update."
This term can be construed to be as restrictive as using DBUPDATE to change an entry. It can also refer to UPDATE access DBOPEN MODE 2. Very rarely seen. To get very specific, update can mean that the modify date [has been] changed in the file label of one or more IMAGE related files. To get very general, of course an SM user can ‘update’ the database via a restore from tape.
Auditors sometimes ask broad questions, the sort of inquiry that fits better with the everyday use of HP 3000s in an enterprise. But for an expert like Hornsby — who wrote The TurboIMAGE Handbook — update means any kind of modification capability.
So you can answer "no, SM doesn't permit a user to update a database in another 3000 account." This answer is truthful to the extent that an auditor's concern is changing data, it appears, not just making a minor date change or using DBOPEN MODE 2. Auditors without 3000 expertise, well, they might not go this far in their examinations.
As for the SM user's ability to muck up an IMAGE database, Hornsby said this mistake is not difficult to make.
As we have unfortunately seen, it is not uncommon for an SM user [who has obtained a database password] to corrupt an IMAGE database using the restore command ("Oops, I thought I was signed onto the test account.")
Posted by Ron Seybold at 02:14 PM in Hidden Value, Homesteading, Web Resources | Permalink | Comments (0)
September 12, 2007
Making GZIP work on a 3000
I have a copy of GZIP on my HP3000 947 which I put on back in 2000/2001, now I need a copy for use on my a500 box, but do think I can remember were I got it from or how to install.
I have a client that sends me a file once a month in this format and I am transferring the application from the 947 to A box. All I can find on HP's Jazz Web site is the GNU tool; is it part of this. How do I get going with GZIP?
Mike Caplin replies,
I had a similar situation with PKZIP. It was a pain to get it installed, and once it was on an A-Class HP 3000 I had to do the same on an N-Class. The HP SE told me I couldn’t just move the executable, that it had to be installed again. That didn’t make sense, so I FTPd the executable to the other box five years ago and it’s worked fine ever since.
Matthew Purdue of the OpenMPE board adds,
If you have NS3000 on both systems, issue a DSLINE command, then a DSCOPY command.
Brent Moore offered a way to get the program onto the 3000 via Reflection:
If you have reflection, you can download a copy from the other box (labels format) then upload it to the new box.
You can also just pull a WRQ-label format copy of the file from
www.3k.com/other/native_hp3000_software.html
Then upload it (be sure to use LABELS format) to your new host.
On my boxes, gzip lives in /SYS/HPBIN/
Posted by Ron Seybold at 05:22 AM in Hidden Value, Homesteading | Permalink | Comments (0)
July 23, 2007
Update to keep the link to IMAGE open
Every HP 3000 contains an ODBC database link tool. ODBCLink/SE was engineered by MBFA, then bundled in with the HP 3000 operating system. The software has been available since MPE/iX 6.0, so that covers close to a decade's worth of releases. MB Foster has offered an upgrade to the 3000 community to expand the tool's power, an upgrade at a discount.
Keeping ODBCLink/SE running isn't complex, but it can require more than just keeping the 3000 plugged in to your building's power source. You have to keep up with some patches if things change in your environment. Current HP support customers can get updates, online, for the bundled software.
On the HP 3000 Internet newsgroup, one 3000 user was trying to keep the link tool from hanging up. HP's Cathlene McRae, Senior Response Center Engineer, offered a few solutions to the problem.
If you are getting a number of hangs from the ODBCLink/SE driver you may need to do one of the following:
1) Update the version of the ODBCLink/SE driver. The current version is g04.05. Run odbcutse.odbcse.sys to discover your current version.
If the version is f.xx or e.xx, you should update. If you need a newer version of ODBCLink/SE you will need to open a case with the HP Response Center. ODBC patches are not available on the HP IT Response Center web site.
2) The problem may be network configuration. emr_na-c01003546 documents these issues. The hangs may be waits.
It is possible by adjusting the values on your DBE or TCP configurations, the problems will go away.
Posted by Ron Seybold at 06:18 PM in Hidden Value, Homesteading | Permalink | Comments (0)
July 03, 2007
Which RAID to recommend
By Gilles Schipper
Homesteading Editor, 3000 NewsWire
Yesterday I introduced the strategy of using RAID storage, starting a low-cost MOD20 array, to improve a 3000's performance. Here's a few other things to consider if you will be acquiring a MOD20.
Although possible, I would not recommend utilizing RAID5 LUNs in an HP 3000 environment — unless your greatest priority is to maximize disk space availability at the expense of performance.
RAID5 offers fail-safe functionality over a group of disks (minimum of three) by means of one disk of the RAID5 disk being allocated as a parity disc. The benefit of RAID5 over RAID1 is that it results in a greater amount of overall usable disk space than RAID1. However, it performs poorly in an HP 3000 environment, and cannot be booted from if specified as the system disk (LDEV 1).
Although the supported maximum memory configuration of each Storage Processor (SP) unit is 64MB, 128MB works best (although not all of it can be used).
Each SP has 4 memory slots. You can maximize the performance of the MOD20 by populating each SP with four 32MB memory SIMMs, 72-pin, FPM with parity, 60ns.
The NIKE MOD20 is a very capable and useful solution to the fragile environment afforded by a JBOD environment — particularly because most 3000 JBOD disk systems tend to be very mature and consequently relatively unreliable and prone to failure.
And, although the MOD20 disk system itself is also quite long in the tooth, it’s got built-in fail-safe mechanisms. Also, the MOD20 would appeal to those with very limited budgets, since the devices are quite inexpensive in the used-equipment market.
There are other, more advanced RAID systems available that also support the HP 3000 environment. These include the HP Autoraid12H system, various VA7nnn systems, some of the HP XP-family members, as well as EMC systems.
The list above are presents in order of increasing cost, for the most part.
The bottom line is that if you are not already utilizing RAID technology for your 3000, now would be a good time to consider it seriously.
Posted by Ron Seybold at 07:54 AM in Hidden Value, Homesteading | Permalink | Comments (0)
June 11, 2007
Spread out to max storage upgrades
Ron Keiper of the Nielsen Company asked how to maximize storage performance in his upgrade to HP’s XP series of disk arrays, linked to an HP 3000. This kind of upgrade is common in a site which is either homesteading or buying more time during a migration project.
We are in the process of migrating our HVD10 storage to an XP256 via FW-SCSI and IO Expansion (1828A) cabinets. Our performance testing thus far shows a large increase in CPU pause and disk queuing on the XP256 system. Job run time is similar, within 5-10 minutes on a one-hour job. I have seen many reports about the XP being a great deal faster, but we are not seeing that and have concerns about moving forward with our storage migration. I am wondering if it is set up properly for best performance.
The XP is set up Raid 1, I believe, (OPEN-9 in DSTAT) and are set up as HPDARRAY in SYSGEN. Is that the correct sysgen ID for the XP? There are a similar number of drives/LUNs on both of our test volume sets. The HVD is setup as Mirror/iX.
Craig Lalley of Echo Tech responds:
The XP256 is a decent box, but only half the speed of the XP512. The LDEV assignment within the XP is very important when it comes to performance. Did you spread your LDEVs across ACPs and raidgroups?
You didn’t mention how much Array Cache you have in the XP256. Keep in mind the XP storage array is cache centric, meaning everything goes through cache. With the XP256, I would max out the array cache.
Lalley, who specializes in this kind of configuration upgrade, adds
Remember, always spread your IO... across XP ports, XP cards, XP array groups, XP ACPs, host HBAs, Host System Bus Adapters and switch ports.
Posted by Ron Seybold at 01:36 PM in Hidden Value, Homesteading, Migration, User Reports | Permalink | Comments (1)
April 10, 2007
Network advice on sockets, gateways and uptime
Is there a way to scan all the ports on my HP 3000 Series 996: How many are being used, and how many are available?
Mark Bixby of HP replies:
SOCKINFO.NET.SYS can tell you which programs have opened which sockets.
NETTOOL.NET.SYS STATUS,TCPSTAT and STATUS,UDPSTAT can also give you useful information about sockets, particularly STATUS,TCPSTAT and CONNTABLE.
Or you can run any external hacker tool (Nessus, etc) and do a port scan against your 3000. This is not recommended during production hours, since such ports cans can sometimes confuse network applications.
When I try to configure a on our MPE/iX 7.5 system, I get the following error when I try to validate my new NMMGR gateway configuration.
Searching for subsystem validation routine VALIDATENETXPOR
---> VALIDATION OF NETXPORT SUBSYSTEM STARTED <---
*** VALIDATE ERROR --> PATHNAME : NETXPORT.NI.LAN1.INTERNET
CONFIGURED GATEWAYS (1) MUST BE <= IPU MAX GATES (0). (VALERR 32)
---> VALIDATION OF NETXPORT SUBSYSTEM FINISHED <---
There are no other gateways configured so the CONFIGURED GATEWAYS (1) value look okay to me — so how can I increase the IPU MAX GATES value?
James Hofmeister of HP replies:
In MPE/iX 5.5 and 6.0 (unpatched) the limit was 14 gateways. This was increased to 255 gateways with patches, and was included in base 6.5 and 7.x.
The fact that validate says “IPU MAX GATES (0)” would indicate to me that you have corruption of your configuration file in “at least” the field that holds this value.
I would suggest that you want to first keep a copy of this config file, then purge NMCONFIG.PUB.SYS and then rebuild your configuration with guided config.
Note: You could do a copy subtree of the NETXPORT.PROT.IPU field from NMAUX1.PUB.SYS to NMCONFIG.PUB.SYS to update this field — but at this point I would expect problems in this config file with more than just this one field.
Is there a way to use the 3000's networking to check how long your system has been up?
James Hofmeister replies:
If you have SNMP running, a query to check system uptime is:
: snmpget ector.atl.hp.com public system.sysUpTime.0
Name: system.sysUpTime.0
Timeticks: (418638300) 48 days, 10:53:03
I get no awards for 48 days uptime, but I use my machines to duplicate, beta test and verify repair of customer network problems.
Posted by Ron Seybold at 09:01 AM in Hidden Value | Permalink | Comments (0)
April 04, 2007
Sorting out Sort key strategy
I (we) am loading a lot of data into a detail data set in IMAGE with a sort key. Do I presort the data by the sort key only? Or do I presort by the Automatic key then the sort key?
As in:
Entry Offset
BP-EXPLODE# X10 1 (!BP-EXPLODE-A(PRIORITY))
BP-BENEFIT X10 11 (BP-BENEFIT-A)
COMPONENT X4 21
RIDER-TITLE X8 25
YMDEFF X8 33
YMDEND X8 41
PRIORITY X2 49
I know this really improves performance.
Ray Shahan replies:
Since your sort key is at the end of the data set, then you need only sort by the sort key value.
Denys Beauchemin adds:
Sort by BP-EXPLODE# as the first key and PRIORITY as the second key within BP-EXPLODE#.
Posted by Ron Seybold at 06:05 PM in Hidden Value | Permalink | Comments (0)
March 27, 2007
Tricks with spoolfile redirection
Robert Holtz writes:
We have our 911 interface running on our HP 3000 24x7. Once a week, we abort the Public Safety Systems Incorporated (PSSI) application to close out the spoolfile that the application generates. Is there a way to keep the application running and redirect the output to a new spoolfile? We are running MPE/IX 7.0 PP2 and this is on an N-Class e3000 system.
Our Homesteading Editor Gilles Schipper replies:
I think the only way you could do that would be to actually modify the application program to periodically (say, for example, every 10 pages or every 100 pages) close then re-open the print file.
Olav Kappert of IOMIT International adds:
If the program can be slightly modified, then I would suggest creating a message file as a conduit to the application. The program would do a read of the message file with the nowait option every once and awhile. If the application encounters a keyword indicating a new spoolfile, then the program would close the spoolfile and reopen it.
An alternate method would involve the application being modified to close and open the file at a particular day and time during the week.
Robert Schlosser of Global Business Systems adds:
Short of closing and reopening the after n number of pages, you could have the application read (without wait and checking status codes) a message file. It could then close and open the output file on demand and possibly even close down the application gracefully (no abort). I do not know if you have access to the source, nor do I know if you want to tinker with the innards of a working program.
Posted by Ron Seybold at 05:30 PM in Hidden Value, Homesteading | Permalink | Comments (0)
February 16, 2007
Web Console: A good left arm for 3000s?
I'm in the process of installing my first Secure Web Console and have a question. The installation instructions look like the SWC will replace the current 700/92 terminal, as there is only one serial port on the console/LAN card in the server. It feels like I'll be cutting off my right arm in doing away with the "console." Not that we use it that much in day-to-day operations — but it has become a bit of an old friend over the years, and I feel a bit of pending loss.
Since this is the case, could there be problems from not having the physical console there, and having to fly with the SWC? And if the SWC dies for any reason, can you just put the serial cable back on the terminal?
— John Bawden
Craig Lalley replied to the final question about putting the serial cable back on, "Yes, you can." Wes Setree added very recent information about an installation just today. "Actually, I just configured a SWC a few minutes ago."
We keep our old terminal and keyboard on the cabinet and could switch the cable from the SWC to the terminal in case I need to use the terminal while sitting right there at the server (reboot perhaps). So far I have not had any need to switch the cable back and forth between them, since the SWC allows for a remote reboot if necessary.
Posted by Ron Seybold at 07:54 PM in Hidden Value, Homesteading | Permalink | Comments (0)