Magento Trials and Tribulations

I’ve just exited from a rather scary period trying to upgrade Magento 1.2.0.1 to Magento 1.4.0.1. After getting scripts so that I could migrate customers, orders and products, I set up 1.4.0.1 locally. After a few hours of trying I managed to get all the data into the database.

However, it was then I realised the amount of work that was required to redo the template files and the CSS.

Nevertheless, I went to set up a test version remotely. This is where things fell apart. I decided to attempt an incremental upgrade from 1.2.0.1 through to 1.4.0.1 using Magento Connect. My reasons were clear: to avoid the need to do a clean installation.

However, don’t try to do this, especially if you have another version of Magento on the same server and you’re using the data from that version. The upgrade won’t deal with the jump between versions – something I should have anticipated. The other issue was that despite my attempts at removing all urls to the live site from the test site’s database, I must have missed some as after running the magento upgrade suddenly the live database had 255 tables rather than the original 212!

Woe is me! My upgrade ignored the test and upgraded the live database …

So, I quickly switched the live version with a backup I’d taken and restored the database to this. However, the products wouldn’t show and the neither would the admin. I told the client, who was very understanding, and promised to make good quickly. But, to my surprise a little while later the whole site was back up and running. I can only think there was a cache issue on the server.

I will do the upgrade but it’s going to be done with far more research and analysis than I had done. Magento is great software but it’s still immature, especially the open source version. You can’t play with it expecting it to be lenient with you preventing you from doing something you shouldn’t. Also, documentation is informal so you do have to piece things together to work out how to do something.

That said, I’d rather use the open source version than pay £8k – £15k for a team to manage the installation and upkeep.