My system upgraded from MySQL 5.7.30 to 8.0.

After that, CiviCRM was broken and I had to downgrade. I did it to Mysql 5.7.31 and the database ran again, but with a bunch of identical error messages at the top of my pages:

Notice: Trying to access array offset on value of type int in element_children() (line 6656 of /usr/share/drupal/includes/common.inc).

I still have to perform some upgrades from CiviCRM 5.26.0 to 5.30.0

My additional question is: is it sufficient to upgrade CiviCRM to make the errors disappear or do I have to fix first the errors. In case I have to upgrade, I would like to know if it is better to upgrade in one shot from 5.26.0 to 2.30.0 or will I do it step by step?


There are a few items here:

  • It's safe to upgrade CiviCRM from 5.26 to 5.30 in a single step. As always, back up your database first, and if you need to restore it, it's safest to drop the existing contents before reimporting the backup.

  • Notices should not be configured to appear on a production site, they're mainly of concern to developers. Since you use Drupal you can turn notices off from the UI. Other should change their php.ini.

Regardless, notices shouldn't prevent an upgrade, and moreover, the notices appear to be coming from Drupal, not CiviCRM.

Finally - I noticed that MySQL 5.7.31 doesn't like to export data unless you a) grant all privileges, or b) pass --no-tablespaces to mysqldump. Either approach is fine.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.