PKP PN Plugin failing in scheduled tasks

I have a few scheduled tasks set up in cron:

# OJS Scheduled Tasks
#0 */6 * * *     /usr/local/bin/php $HOME/www/public_html/tools/runScheduledTasks.php

# OJS PKP Statistics (roda 01:00)
10 1 * * *      /usr/local/bin/php $HOME/www/public_html/tools/runScheduledTasks.php $HOME/www/public_html/plugins/generic/usageStats/scheduledTasksAutoStage.xml

# OJS PKP PLN (LOCKSS)
20 1 * * *       /usr/local/bin/php $HOME/www/public_html/tools/runScheduledTasks.php $HOME/www/public_html/plugins/generic/pln/xml/scheduledTasks.xml

# OJS Crossref
30 1 * * *       /usr/local/bin/php $HOME/www/public_html/tools/runScheduledTasks.php $HOME/www/public_html/plugins/importexport/crossref/scheduledTasks.xml

I brought those from my 2.4.8.5 instalation, and the PKP PLN one is failing with the following:

PHP Notice:  Undefined index: export_deposit_error in /usr/home/luizborges/www/public_html/plugins/generic/pln/classes/DepositDAO.inc.php on line 146
PHP Fatal error:  Uncaught Exception: DB Error: Unknown column 'export_deposit_error' in 'field list' Query:
                                UPDATE pln_deposits SET
                                        journal_id = ?,
                                        uuid = ?,
                                        status = ?,
                                        date_status = '2020-11-05 01:20:02',
                                        date_created = '2017-08-05 00:58:44',
                                        date_modified = NOW(),
                                        export_deposit_error = ?
                                WHERE deposit_id = ? in /usr/home/luizborges/www/public_html/lib/pkp/classes/db/DAO.inc.php:703
Stack trace:
#0 /usr/home/luizborges/www/public_html/lib/pkp/classes/db/DAO.inc.php(231): DAO->handleError(Object(ADODB_mysqli), '\n\t\t\t\tUPDATE pln...')
#1 /usr/home/luizborges/www/public_html/plugins/generic/pln/classes/DepositDAO.inc.php(103): DAO->update('\n\t\t\t\tUPDATE pln...', Array)
#2 /usr/home/luizborges/www/public_html/plugins/generic/pln/classes/DepositPackage.inc.php(657): DepositDAO->updateObject(Object(Deposit))
#3 /usr/home/luizborges/www/public_html/plugins/generic/pln/classes/tasks/Depositor.inc.php(164): DepositPackage->updateDepositStatus()
#4 /usr/home/luizborges/www/public_htm in /usr/home/luizborges/www/public_html/lib/pkp/classes/db/DAO.inc.php on line 703

Am I missing something here?

I’ve found that: https://github.com/pkp/pln/blob/a41a1eb3241d8c16ce9fc8bfec1024af11e20567/PLNPluginSchemaMigration.inc.php

Is it just a matter of creating the missing column? Isn’t that like supposed to have been processed?
$table->string('export_deposit_error', 1000)->nullable();

Also, are those scheduled tasks really needed? I remember that previous there was a Wiki with some of those settings, but I couldn’t find it anymore.

Hi @luizborges,

Hmm, installing the 3.x plugin should have updated your database schema. How did you install the plugin?

Regards,
Alec Smecher
Public Knowledge Project Team

@asmecher, I just upgrade to OJS 3 and I don’t recall if the plugin was already installed or not, I do remember updating a few plugins using the plugin interface on the dashboard.

I added the missing column to the table and I don’t have errors anymore from that. I’m not sure why it wasn’t created. This is already the second migration database blunder (the other one as the NOTIFICATION default email template record missing).