Upgrading Concrete5 5.2.2.1 to 5.6.0.1 using SimpleScripts

By XeroCube | September 26, 2012

I currently run several Concrete5 web sites from my host, Bluehost.com. Typically, I use the SimpleScripts tool to do the typical upgrade maintenance for all of my apps. It’s simple, easy to use, and rarely causes concern. However, this upgrade was a little different. I clicked the upgrade icon and away it went. upon review of the new site, I saw that my site was displaying nothing but blank pages. I couldn’t see my dashboard and no discernible error message.

After some quick looking around, as I hadn’t needed to look through the file system before, I found the “error_log” file sitting in the root installation directory. Error logs are usually an invaluable resource while troubleshooting. This was certainly the case this time around. In the log, I found the following messages:

[25-Sep-2012 07:05:42] PHP Warning: require_once(/home1/source/public_html/site/concrete/libraries/3rdparty/htmLawed.php) [<a href=’function.require-once’>function.require-once</a>]: failed to open stream: No such file or directory in /home1/source/public_html/site/concrete/core/libraries/loader.php on line 30
[25-Sep-2012 07:05:42] PHP Fatal error: require_once() [<a href=’function.require’>function.require</a>]: Failed opening required ‘/home1/source/public_html/site/concrete/libraries/3rdparty/htmLawed.php’ (include_path=’/home1/source/public_html/site/libraries/3rdparty:/home1/source/public_html/site/concrete/libraries/3rdparty:.:/usr/lib/php:/usr/local/lib/php’) in /home1/source/public_html/site/concrete/core/libraries/loader.php on line 30
[25-Sep-2012 07:05:43] PHP Warning: require_once(/home1/source/public_html/site/concrete/libraries/3rdparty/htmLawed.php) [<a href=’function.require-once’>function.require-once</a>]: failed to open stream: No such file or directory in /home1/source/public_html/site/concrete/core/libraries/loader.php on line 30

This was repeated every time the site was loaded. I checked in the directory and found, as expected, the htmLawed.php file did not exist. I copied this file over from a diffferent, working installation and retried. I received a bevy of other errors. At this point, I was getting somewhat frustrated. The support staff was not very involved, a departure from their usual outstanding efforts.

I walked away from my troubleshooting for a few hours so I avoid tunnel vision. With a fresh head, I went through and finally found great support information on the Concrete5 Community. I had started my search there, but never quite found the right terminology to get to the right answer. I knew I couldn’t have been the only person to face this issue. Here is the URL that holds the key to this problem: http://www.concrete5.org/documentation/how-tos/developers/troubleshooting-concrete5-updates/.

It turns out that the SimpleScripts upgrade did not fully complete, leaving the Database and the GUI out of sync. According to the post, I fell under Scenario #1, the Core being newer than the Database.

Scenario #1: Core is newer than the database (and you want finish the upgrade)

In this case, you can run the upgrade script directly from its url in your tools directory:

http://www.your-concrete5-site.com/index.php/tools/required/upgrade

If all goes well, this will update the database schema to match the core. It’s a good idea to make sure you have a copy of the unaltered database hanging around in case something doesn’t work.

Once I completed the upgrade process, my website was restored, up and running, with no issues. Admittedly, this was a simple fix, just a frustrating journey to determine the root cause. I certainly hope this post helps prevent hours of wasted time for others facing this issue. I’ve truly enjoyed the simplicity of Concrete5, I’m just not an expert at this point. I’ll be sure to share any other  gotchas I come across.

Topics: Tech | No Comments »

Comments

Archives

Blogroll

RockinMedia