In 2008 I upgraded my Universe and Unidata PE Windows systems and made some notes here. Today I upgraded to Unidata v7.2.7 and Universe v11.1.1. Here are notes on these latest releases.
Downloading and installing the PE (Personal Edition) packages from Rocket Software is easier than from IBM because we don’t need to get an activation key. We just need to fill in a form to let them know who is getting their software, and the download will work immediately on install. Finding the download page is a real trial, so here is a link to the download page. Some of the pages over there are dead and few of them actually have a Download link. *sigh* In such a large company, doesn’t anyone use their own website?
The install ZIP files have a Readme that includes all product changes. That’s helpful. Unfortunately there are no installation/upgrade instructions. In the impressively large collection of technical documentation, is it strange that there is no installation guide, or did I just miss it? The root directory of the ZIP files have a AutoRun.exe file, apparently for use if these files are put on CD/DVD media. There are also Setup.exe and Install.exe files. AutoRun leads the right place – use that for both databases.
The installs for Unidata and Universe are slightly different and I’ll go over them separately.
Unidata doesn’t really provide a clue that it is aware of an existing installation until after you’ve already done some clicking. However, yes, it does see an existing installation and offer to upgrade.
The installer has a prompt for where to install the data and UniShared files. It sees that this is an upgrade and properly installs in the right place.
In my last blog I mentioned that Unidata didn’t read existing registry entries but apparently they fixed that, so after the upgrade I could immediately telnet into the environment.
The final upgrade step is simply to log into each account one by one and execute “!updatevoc”. Use “help updatevoc” to see options but the default works fine.
The Unidata upgrade seemed to go through quickly and properly. I still need to check UniAdmin, UniObjects, and other things but the DBMS itself upgraded well.
For some reason Universe installs the Microsoft Visual C++ 2005 Redistributable package prior to install – Unidata does not. This isn’t a problem, I’m just letting you know.
Universe detects an existing installation immediately and gives the option to Modify it. However, when installing it still displays the default install directory (C:\U2\UV) and does not see that I have Universe stored elsewhere. It also doesn’t see the UniShared directory, so it defaults to C:\U2\unishared. I’m guessing Rocket doesn’t want to default to loading to an IBM directory, but that’s where my stuff is, so I think they should use it. If you accept the defaults it will tell you that the database and UniShared already exist elsewhere. Personally I’d just prefer that they default to the current location rather than allowing us to make a change or giving us a warning after we accept their defaults.
When I reset to my existing UniShared directory I got the weird prompt below. It’s apparently confused about long vs short path names.
For grins I accepted that and it failed, saying I would need to modify configuration settings myself. WHAT? Moving past that screen, the Back button is still available but you can’t click back anymore. Don’t get that prompt wrong!
Since I was testing this in a VMware virtual machine with non-persistent storage I didn’t care. I just closed the VM and restarted and my disk wasn’t updated.
The second time around, I pointed the install directory to the directory containing my existing Universe file tree, and I let it install to C:\U2\Unishared. On answering Yes to that prompt it continued to the next prompt about NLS – though the back button still didn’t work. Again, don’t get that one wrong!
After going through all prompts the installer started copying files. When it got to C:\U2\unishared, it once again choked with “Failed to copy existing unishared directory to C:\U2\unishared. Existing settings will need to be manually migrated.” Nice. They did copy some of the files but that came up anyway. I think what’s happening is that for some reason they’re copying some of the AutoRun files, and these are read protected. I tried to unset that flag but for some reason it stuck. “AutoRun in UniShared??” Yeah, check it out:
Side note: I thought Microsoft had the market on error messages like “the file failed to open, check the file and try again” … with no indication of what that file was. Here we’re being told that existing settings need to be migrated with no indication of what those settings might be.
Here’s what you need to know: In the new C:\U2\unishared\unirpc directory there is a file called unirpcservices. This file identifies the various RPC services for both Universe and Unidata. The latest version does have a couple new lines in it. Unless you’ve changed this manually you don’t need to worry about merging old with new, just make sure the timestamp on the file is ‘today’. Same with the files called version and unirpcd.exe. In C:\U2\unishared, there are also files sharedby and version. The sharedby file identifies the versions of both U2 databases (if present). The real bottom line here is that even though the installer failed while updating unishared, it looks like everything is OK.
Despite the above bumps, Universe seemed to complete the upgrade OK. Again, this was relatively quick and painless. It would take 5 minutes if you know what to expect but it took me over an hour because I didn’t. Did anyone find those install/upgrade guides yet?
As with Unidata, the final step with universe is to update account VOCs. Log into each account one by one and execute “UPDATE.ACCOUNT”. As you login to each account in Universe, it may or may not prompt you: “Your VOC is out of date. Update to current release (Y/N)?” Answering Y to this will update the VOC with the correct flavor so that you don’t need to UPDATE.ACCOUNT manually.
When Unidata displays the Programs Folder for shortcuts, it defaults to “IBM U2\…” where Universe defaults to “Rocket SW\…” or something similar. If you want to get away from the IBM branding, it’s probably a good idea to use C:\U2… and “Rocket SW…”
If you install Unidata after Universe, Universe starts services when it installs so you’ll get prompted to stop the Universe Telnet service and others when you’re installing Unidata. Go figure. Yeah, actually I get this. For anyone doing this the point here is that you will get prompted. Don’t worry about it, just allow it to close down the required services.
If you have both environments and you install Universe first, you may think something went wrong in unishared because the unitelnet directory is missing. This gets created when you install/upgrade Unidata – and at least in my system the directory is empty.
After installing Unidata, if you’re asking it to move unishared from Program Files to C:\U2, you’ll notice that the unirpc directory is actually moved, not just copied. Now that I think about it, the Universe update may have failed because Unidata was still using this path, but after Universe moved out of there Unidata was free to delete the directory when it was done with it. You can’t delete Program Files\IBM yet because UniDK is probably still in there.
I could be wrong but after doing this a few times I think it’s best to install Universe first, then Unidata, just to get over that hump with unishared.
When done installing, delete the AutoRun* files from unishared.
Finally, be sure to reboot when you’re doing installing. With Universe it doesn’t seem to be necessary but Unidata asks you to reboot. I think it’s just a good idea to make sure services get restarted, that the config records get read back in, maybe for registry entries to get re-read etc.
I hope this is helpful to someone. I write this info for others and also to give myself something to look back on each time I upgrade. It looks like the install/upgrade process is improving for the U2 platforms. I’m hoping blogs like this contribute to that process. If you can explain why some things above are the way they are, or if I got something very wrong here, please (register and) post a comment. It would be especially cool if someone from Rocket could comment on the above.