Hello all,
For some days now I’m trying to do a test upgrade on our OJS. Several minor problems like convert file extensions to lower case, empty date fields, and articles with no section_id were already corrected, but I’m still getting the error:
[code]
PHP Warning: assert(): Assertion failed in /ojs_temp/rc-3.0.1/lib/pkp/classes/submission/PKPSubmissionFileDAO.inc.php on line 380
PHP Stack trace:
PHP 1. {main}() /ojs_temp/rc-3.0.1/tools/upgrade.php:0
PHP 2. UpgradeTool->execute() /ojs_temp/rc-3.0.1/tools/upgrade.php:34
PHP 3. UpgradeTool->upgrade() /ojs_temp/rc-3.0.1/lib/pkp/classes/cliTool/UpgradeTool.inc.php:64
PHP 4. Installer->execute() /ojs_temp/rc-3.0.1/lib/pkp/classes/cliTool/UpgradeTool.inc.php:88
PHP 5. Installer->executeInstaller() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:186
PHP 6. Installer->executeAction() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:265
PHP 7. call_user_func:{/ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415}() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415
PHP 8. Upgrade->convertSupplementaryFiles() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415
PHP 9. PKPSubmissionFileDAO->updateObject() /ojs_temp/rc-3.0.1/classes/install/Upgrade.inc.php:1267
PHP 10. assert() /ojs_temp/rc-3.0.1/lib/pkp/classes/submission/PKPSubmissionFileDAO.inc.php:380
<h1>There are no readable files in this directory tree. Are safe mode or open_basedir active?</h1>ojs2: There are no readable files in this directory tree. Are safe mode or open_basedir active?
I’ve added the following to line 379 of PKPSubmissionFileDAO.inc.php:
echo "$previousFilePath -> $targetFilePath".PHP_EOL;
To find out which file is missing, and when I ran the upgrade again I got this:
[code]
/ojs_temp/rc-3.0.1_files/journals/2//articles/6434/attachment/6434-1-33005-2-13-20120920.docx -> /ojs_temp/rc-3.0.1_files/journals/2//articles/6434/submission/6434-16-33005-2-2-20120920.docx
/ojs_temp/rc-3.0.1_files/journals/2//articles/868/attachment/868-1-3522-1-13-20080125.jpg -> /ojs_temp/rc-3.0.1_files/journals/2//articles/868/submission/868-14-3522-1-2-20080125.jpg
->
PHP Warning: assert(): Assertion failed in /ojs_temp/rc-3.0.1/lib/pkp/classes/submission/PKPSubmissionFileDAO.inc.php on line 380
PHP Stack trace:
PHP 1. {main}() /ojs_temp/rc-3.0.1/tools/upgrade.php:0
PHP 2. UpgradeTool->execute() /ojs_temp/rc-3.0.1/tools/upgrade.php:34
PHP 3. UpgradeTool->upgrade() /ojs_temp/rc-3.0.1/lib/pkp/classes/cliTool/UpgradeTool.inc.php:64
PHP 4. Installer->execute() /ojs_temp/rc-3.0.1/lib/pkp/classes/cliTool/UpgradeTool.inc.php:88
PHP 5. Installer->executeInstaller() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:186
PHP 6. Installer->executeAction() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:265
PHP 7. call_user_func:{/ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415}() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415
PHP 8. Upgrade->convertSupplementaryFiles() /ojs_temp/rc-3.0.1/lib/pkp/classes/install/Installer.inc.php:415
PHP 9. PKPSubmissionFileDAO->updateObject() /ojs_temp/rc-3.0.1/classes/install/Upgrade.inc.php:1267
PHP 10. assert() /ojs_temp/rc-3.0.1/lib/pkp/classes/submission/PKPSubmissionFileDAO.inc.php:380
<h1>There are no readable files in this directory tree. Are safe mode or open_basedir active?</h1>ojs2: There are no readable files in this directory tree. Are safe mode or open_basedir active?
It seems that an empty file name is being passed here, but I was not able to find where the problem is. Our OJS is old and have indeed some missing files due to a hard disk crash on the server some years ago.
We are using:
Ubuntu 16.04.1 LTS
PHP 5.6.27-1+deb.sury.org~xenial+1
mysql Ver 14.14 Distrib 5.7.16
OJS 2.4.7-1
Any help is appreciated. Thanks!
Oberdan