Hi everyone,
I am working on a OJS upgrading process of a 3.0.0.0 installation. The last upgrade on this database was on 13/10/2021, so I believe there is no backup from 2481 version to 3000.
An error that seems to be related with this topic PHP Fatal error: Uncaught Exception: DB Error: Unknown column when upgrading OJS 2.4 to 3.2 has occured, although, solution seems not to be the same.
php error log on 3000 > 3214 upgrading:
[31-Oct-2023 15:02:10 America/Sao_Paulo] PHP Fatal error: Uncaught Exception: DB Error: Unknown column 'setting_type' in 'where clause' Query: DELETE FROM submission_settings WHERE setting_name = 'coverImage' AND setting_type = 'object' in ./3214/lib/pkp/classes/db/DAO.inc.php:703
Stack trace:
#0 ./3214/lib/pkp/classes/db/DAO.inc.php(231): DAO->handleError(Object(ADODB_mysqli), 'DELETE FROM sub...')
#1 ./3214/classes/install/Upgrade.inc.php(1881): DAO->update('DELETE FROM sub...')
#2 ./3214/lib/pkp/classes/install/Installer.inc.php(417): Upgrade->localizeArticleCoverImages(Object(Upgrade), Array)
#3 ./3214/lib/pkp/classes/install/Installer.inc.php(263): Installer->executeAction(Array)
#4 ./3214/lib/pkp/classes/install/Installer.inc.php(186): Installer->executeInstaller()
#5 ./3214/lib/pkp/classes/cliTool/UpgradeTool.inc.php(8 in ./3214/lib/pkp/classes/db/DAO.inc.php on line 703
The table submission_settings
has only 1 entry on setting_name = coverImage
and 1 entry on setting_name = coverImageAltText
, both related to the same submission_id. I tried run the upgrade removing these entries, but result was the same.
I tried to upgrade to another versions too but received differents errors.
Error on 3000 > 33015 upgrading:
[31-Oct-2023 09:39:24 America/Sao_Paulo] PHP Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'setting_type' in 'where clause' in ./33015/lib/pkp/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:80
Stack trace:
#0 ./33015/lib/pkp/lib/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php(80): PDO->prepare('DELETE FROM sub...', Array)
#1 ./33015/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Connection.php(485): Doctrine\DBAL\Driver\PDOConnection->prepare('DELETE FROM sub...')
#2 ./33015/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Connection.php(664): Illuminate\Database\Connection->Illuminate\Database\{closure}('DELETE FROM sub...', Array)
#3 ./33015/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Connection.php(631): Illuminate\Database\Connection->runQueryCallback('DELETE FROM sub in ./33015/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Connection.php on line 671
Error on 3000 > 3124 upgrading:
[31-Oct-2023 18:11:18 America/Los_Angeles] PHP Fatal error: Uncaught Error: Call to a member function getUsername() on null in ./3124/lib/pkp/classes/submission/SubmissionFile.inc.php:618
Stack trace:
#0 ./3124/classes/install/Upgrade.inc.php(1022): SubmissionFile->_generateName()
#1 ./3124/lib/pkp/classes/install/Installer.inc.php(421): Upgrade->setFileName(Object(Upgrade), Array)
#2 ./3124/lib/pkp/classes/install/Installer.inc.php(265): Installer->executeAction(Array)
#3 ./3124/lib/pkp/classes/install/Installer.inc.php(186): Installer->executeInstaller()
#4 ./3124/lib/pkp/classes/cliTool/UpgradeTool.inc.php(88): Installer->execute()
#5 ./3124/lib/pkp/classes/cliTool/UpgradeTool.inc.php(64): UpgradeTool->upgrade()
#6 ./3124/tools/upgrade.php(34): UpgradeTool->execute()
#7 {main}
thrown in ./3124/lib/pkp/classes/submission/SubmissionFile.inc.php on line 618
These erros indicates that there is an issue has occured in a previous upgrading? Is this possible to be solved?
php version: 7.4
tables was converted from MyISAM to InnoDB and collation from latin1_swedish_ci to utb8_general_ci
Hopeful regards