2023-06-14 16:43:01 [A pre-flight check failed. The software was successfully upgraded to 3.3.9.9 but could not be upgraded further (to 3.4.0.0). Check and correct the error, then try again.]
ERROR: Upgrade failed: DB: SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘at.assoc_type’ in ‘where clause’ (SQL: select distinct at.type_id from announcement_types as at left join journals as c on at.assoc_id = c.journal_id where c.journal_id is null or at.assoc_type <> 256)
I think your installation was damaged by the first try.
You need to rollback to 3.3.0-14 and try to install again changing the email section in your config before you upgrade.
If you confirm you are able to upgrade this second time, the error you found looks like something that could be added to the pre-fight checks to protect users from a partial upgrade.
Thank you. I figured it out. Configuration file conf.TEMPLATE.inc.php the new version should be used as the main one. Also in conf.TEMPLATE.inc.php changed the database type from mysqli to mysql.
In version 3.4.0.1, mail settings were added to the e-mail section, which were not present in version 3.4.0.0.
To carify for others… did the upgrade with the wrong config break your DB?
If yes, does it mans you (1) recovered your installation from your backup, (2) fix the config and (3) run the upgrade again… and this second time all goes well?
Hi. Yes, an incorrect configuration destroyed the database. I rolled back to the previous version and restored the database from the backup.
By default, the mysqli database driver is in the configuration file. I fixed it on mysql and successfully upgraded.
The site is working correctly, but now I get this error in the log:
[Error] The usage_events_20230622.log file has an old event log file format that cannot be processed and therefore will be moved back to the working directory.
Hi @Dimidrol and @marc
I hope you are doing fine! I have the same exact error when I tried to upgrade OJS from 3.3.0-15 to 3.4.0-1. I’m just confused about the reason behind changing the database driver from sqli to sql. SQLI should work fine. Is there anything should be changing in the server side to avoid this error and keep using SQLI? hope @asmecher can clarify this issue for us.
Thanks in advance.
Facing this issue, looks similar to this.
Any ideas/help:
[30-Jul-2023 14:34:09 UTC] SQLSTATE[42S22]: Column not found: 1054 Unknown column 'at.assoc_type' in 'where clause' (SQL: select distinct `at`.`type_id` from `announcement_types` as `at` left join `journals` as `c` on `at`.`assoc_id` = `c`.`journal_id` where `c`.`journal_id` is null or `at`.`assoc_type` <> 256)
I had same problem. I fixed this issue with help of @Dimidrol suggestion. Earlier i just used existing config.ini.php file as it is. I replaced this with new one and updated credentials as usual like Database, files directory, omp path. Now its working fine. Thanks for the help.