Upgrades Break Things
Back when I worked at the Pacific Northwest Laboratory, we worked on a software project hosted on DEC Ultrix workstations. We were in the midst of designing a second version of a map database application when a DEC representative working on a problem with a workstation noticed that we were running Ultrix 4.0. “You should upgrade to Ultrix 4.1,” he told us, “It’s covered in your service contract.” It sounded good to us. So he came back another day, and upgraded the OS on all our workstations.
I think it was an hour or so later when one of us checked out a file, made a change, and tried to compile the system. A stream of errors was emitted, daunting in its length. Our code was all in K&R style C. The new C compiler in Ultrix 4.1 not only used ANSI style headers, but had no known means of telling it to accept K&R headers. We spent about two weeks revising the entire code base of the system to use the ANSI headers. We took to calling our recent system software change as the “operating system downgrade”.
Yesterday, a bunch of software packages got updated on the server here. Apache, MySQL, PHP, and several others were brought up to the cutting edge releases. This, predictably, caused some problems.
Hardest hit were my sites running CivicSpace. First, the “xtemplate” theme engine for CivicSpace is apparently incompatible with the latest version of PHP5. Glenn Branch gave me the heads-up that Antievolution.org was behaving oddly. Actually, what got displayed was the xtemplate theming instructions, which didn’t do much good for anyone. Several minutes of Google searching confirmed that this was a known problem, but the proposed solution — change the theme to a PHPtemplate engine theme — was elusive, since I had no way of logging into the software. I looked for instructions that might make sense for someone with access to the files but unable to log in. No dice. I looked for instructions on changing the default theme via PHPMyAdmin. No go there, either. Eventually, I tried renaming the theme directory for the currently selected but non-functional theme. Bingo. The site displayed oddly, but it did display, with the login form available.
Once a new theme was selected, another problem became apparent. As an administrator, the order in which posts were displayed was chronological order, not reverse chronological order. What? Some more Googling revealed that other people were affected by this. The answer, though, took a bit of searching to find. There’s a page on the Drupal site that discusses the problem and gives the solution. It is down toward the bottom, currently, and discusses changing an “if” condition in function node_db_rewrite_sql of “node.module”. That seems to be doing the job OK.
Maybe there is other fun awaiting me in the wake of these software upgrades. The thing is that upgrading is pretty much mandatory anymore rather than optional, at least if one doesn’t want to simply hand over control of one’s machine to crackers.