Issues upgrading from 5.7.5.13 to 8.5.4

Hello, recently we have had a managed cloud server update it’s PHP version to 7.4. We had no control over this, however this has broken a site using Concrete CMS version 5.7.5.13.

I’m trying to update Concrete to 8.5.4 which I believe is the first version compatible with php7.4, but I’m experiencing this error:

The full error text is:

An exception occurred while executing 'SELECT t0.akID AS akID_9, t0.akHandle AS akHandle_10, t0.akName AS akName_11, t0.akIsSearchable AS akIsSearchable_12, t0.akIsInternal AS akIsInternal_13, t0.akIsSearchableIndexed AS akIsSearchableIndexed_14, t0.atID AS atID_15, t0.akCategoryID AS akCategoryID_16, t0.pkgID AS pkgID_17, t0.akCategory, t4.entity_id AS entity_id_18, t7.uakProfileDisplay AS uakProfileDisplay_19, t7.uakProfileEdit AS uakProfileEdit_20, t7.uakProfileEditRequired AS uakProfileEditRequired_21, t7.uakRegisterEdit AS uakRegisterEdit_22, t7.uakRegisterEditRequired AS uakRegisterEditRequired_23, t7.uakMemberListDisplay AS uakMemberListDisplay_24 FROM AttributeKeys t0 LEFT JOIN CollectionAttributeKeys t1 ON t0.akID = t1.akID LEFT JOIN CalendarEventAttributeKeys t2 ON t0.akID = t2.akID LEFT JOIN FileAttributeKeys t3 ON t0.akID = t3.akID LEFT JOIN ExpressAttributeKeys t4 ON t0.akID = t4.akID LEFT JOIN LegacyAttributeKeys t5 ON t0.akID = t5.akID LEFT JOIN SiteTypeAttributeKeys t6 ON t0.akID = t6.akID LEFT JOIN UserAttributeKeys t7 ON t0.akID = t7.akID LEFT JOIN SiteAttributeKeys t8 ON t0.akID = t8.akID WHERE t0.akID = ?' with params [3]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'ccjddywkrv.SiteTypeAttributeKeys' doesn't exist

I have a feeling this is simply because we’re trying to frog-leap too many versions and it’s missing some migrations, however I can’t run previous version migrations due to the php version limitation! Anybody any idea how I can get around this?

I would suggest to SSH into your site and run concrete/bin/concrete5 c5:update --rerun and see if that fixes it.

You could also try to run concrete/bin/concrete5 orm:schema-tool:update --dump-sql which will check your db against the expected schema and output sql for you to run using phpMyAdmin or something similar on your database to get it up to date

You could also try going straight to 8.5.12. There were frequent issues with migrations through v8 that got corrected and cleaned up later on. While small steps may seem like a good idea, it is usually more reliable to go in one big bang.

Hi John,

I forgot to come back here and say I solved the issue. I ended up cloning the site to a server running php5.6 and then incrementally carried out updates up to v8.5, then I moved the database back into my original server and applied the updated files and update.php file to the codebase and it all worked as expected.