issue upgrading to 5.6.3.4

Permalink
I am updating a really old site from 5.4 to 5.6. First I upgrade to the latest versions of 5.4 and then 5.5. Then upgrading to the latest version of 5.6 I get a sql error due to a null being passed to cID in PagePermissionAssignments. I have traced it back to line 716 in the concrete/helpers/concrete/upgrade/version_560.php file.

Within that while block the $row['cID'] value is 2794 but there is no cID with value 2794 in the collections or the pages tables. The following sql statement reveals that 2794 is the only cID in the PagePermissions table that does not exist in the Collections table. Changing the subquery to search the Pages table gives the same result.

select distinct cID from PagePermissions where cID not in (select cID from Collections)

Removing "distinct" from the query simply results in four rows being returned.

Is this something that might have happened from an incomplete deletion of a page? Is this basically an orphaned cID and is it safe to simply delete every row from PagePermissions that has a cID of 2794?

I am doing this upgrade in a dev environment for testing purposes using a copy of the production db so I can safely experiment without having to worry about breaking the site.

 
Arequal replied on at Permalink Reply
Arequal
Did you try to update not to the latest 5.6 version? I would try to emulate a natural c5 upgrade cycle, not jumping directly at latest version.
sparkymeister replied on at Permalink Reply
Not sure what you mean by a more natural upgrade. If you mean upgrading from latest 5.5 to 5.6.0, then every version of 5.6 until I get to the most recent version that is unrealistic. Also, when upgrading from 5.5 to the most recent 5.6 it should be running every upgrade for every version of 5.6.