Upgrading ojs3.2.1.2 to ojs3.3.0.3 "Impossible to create the root directory"

Hi;
I have tried to upgrade ojs3.2.1.2 to ojs3.3.0.3. I followed all the steps in the upgrade manual so once I started to upgrade database I got this error

ERROR: Upgrade failed: DB: Impossible to create the root directory “/-----------/-------/uploads”. mkdir(): Permission denied

Any suggestions please
Kind Regards,

Hi @Salam_Al-Khammasi,

What about permissions to files and folders? Are they correctly set? See, e.g. : How should file permissions be set? - #2 by ctgraham

I don’t have any problem with permissions. this problem just showed up when I moved the ojs site to another disk in the WHM. its now home2 instead of home so when I tried to upgrade to the latest version it says :

ERROR: Upgrade failed: DB: Impossible to create the root directory “/home/-------/uploads”. mkdir(): Permission deniedto upgrade
I dont know how to make it home2

I’d check:

  • Apache/server settings
  • Domain settings
  • OJS settings → whether the path to files folder is correct

I changed the ojs setting file. it was only home and I did the upgrade again
but I’m still getting errors and this time it was this

ERROR: Upgrade failed: DB: SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint (SQL: alter table submission_file_revisions add constraint submission_file_revisions_submission_file_id_foreign foreign key (submission_file_id) references submission_files (submission_file_id))

There were several similar errors reported on the forum recently all of which were explored and fixed on the master branch, can you let me know if you already tried the solutions described there?

Problem Solved Thanks! I just changed the engine of the database from ‘MyISAM’ to ‘InnoDB’ before I start the upgrade and everything went perfectly. My system is up-to-date now!!
Thanks again for your time

2 Likes

PleaseHelp @asmecher @Vitaliy

Hai every one I’ve tried to update from OJS 3.2.1.4 to OJS 3.3.0 everything is already set on the configfile.ini.php the problem is when I click the upgrade button the process doesn’t show up and only white screen with HTTP error 500 jurnal.acityacaraka.com is currently unable to handle this request.

HTTP ERROR 500

All database engine is INNODB

here is the error log

[01-Aug-2021 04:27:01 UTC] PHP Fatal error: Uncaught Error: Call to a member function getConnection() on null in /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Capsule/Manager.php:74
Stack trace:
#0 /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Capsule/Manager.php(200): Illuminate\Database\Capsule\Manager::connection()
#1 /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/classes/db/DAO.inc.php(65): Illuminate\Database\Capsule\Manager::_callStatic(‘raw’, Array)
#2 /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/classes/plugins/PluginSettingsDAO.inc.php(106): DAO->retrieve('SELECT setting
…’, Array)
#3 /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/classes/plugins/PluginSettingsDAO.inc.php(86): PluginSettingsDAO->getPluginSettings(‘0’, ‘lensgalleyplugi…’)
#4 /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/classes/cache/GenericCache.inc.php(63): PluginSettingsDAO->_cacheMiss(Obje in /home/k5276977/public_html/jurnal.acityacaraka.com/lib/pkp/lib/vendor/laravel/framework/src/Illuminate/Database/Capsule/Manager.php on line 74

Already Solved by changing the database engine