I’m having some issues with the “PKP PN Plugin” in my OJS 3.2.1, one of my journals is showing this in the status of the plugin:
And the others are showing this:
I followed the documentation about this plugin to configure it correctly… I want to know if I need to do something else to deposit my issues or if this is the correct behaviour of the plugin (wich I don’t think is the case).
How long ago did you setup the plugin? I’ve heard of this taking up to a few weeks before the LOCKSS network starts and the progress changes. It is also worthwhile to check your cron configuration:
Apologies for the delay, I heard back from one of my colleagues who suggested referring to the Debugging section of the PKP PN README file: pln/README at main · pkp/pln · GitHub
I wonder if you’re encountering a PHP error… Can you check your PHP error log to see if anything appeared there around the date/time shown above for last_run?
Regards,
Alec Smecher
Public Knowledge Project Team
Here’s what my PHP error log shows for December 12 at 1:20 AM:
[12-Dec-2021 01:20:03 America/Bogota] PHP Notice: Undefined index: export_deposit_error in /ojs/ojsProd/plugins/generic/pln/classes/DepositDAO.inc.php on line 146
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:03 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:04 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:04 America/Bogota] PHP Warning: DOMElement::setAttribute() expects parameter 2 to be string, array given in /ojs/ojsProd/lib/pkp/plugins/importexport/native/filter/PKPPublicationNativeXmlFilter.inc.php on line 89
[12-Dec-2021 01:20:04 America/Bogota] 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 = ‘2021-12-12 01:20:04’,
date_created = ‘2021-10-26 06:21:15’,
date_modified = NOW(),
export_deposit_error = ?
WHERE deposit_id = ? in /ojs/ojsProd/lib/pkp/classes/db/DAO.inc.php:703
Stack trace: #0 /ojs/ojsProd/lib/pkp/classes/db/DAO.inc.php(231): DAO->handleError(Object(ADODB_mysqli), ‘\n\t\t\t\tUPDATE pln…’) #1 /ojs/ojsProd/plugins/generic/pln/classes/DepositDAO.inc.php(103): DAO->update(‘\n\t\t\t\tUPDATE pln…’, Array) #2 /ojs/ojsProd/plugins/generic/pln/classes/DepositPackage.inc.php(570): DepositDAO->updateObject(Object(Deposit)) #3 /ojs/ojsProd/plugins/generic/pln/classes/tasks/Depositor.inc.php(232): DepositPackage->packageDeposit() #4 /ojs/ojsProd/plugins/generic/pln/classes/tasks/Depositor.inc.php(134): Depositor->_processNeedPackaging(Object(Journal)) #5 /ojs/ojsProd/lib/pkp/classes/schedul in /ojs/ojsProd/lib/pkp/classes/db/DAO.inc.php on line 703
PHP Fatal error: Uncaught Exception: DB Error: Unknown column ‘export_deposit_error’ in ‘field list’
…it looks like your database schema does not match what the plugin expects. This could happen if e.g. you used to use an older version of the plugin, and then installed a new version manually (without letting it update the database schema). How did you install this most recent version of the plugin?
Regards,
Alec Smecher
Public Knowledge Project Team
(These instructions are only necessary if you are working with the plugin
manually. If you are installing the plugin using the Plugin Gallery, they are
not necessary.)
Clone the repository containing the code.
Run OJS’s “php tools/upgrade.php upgrade”
Execute “composer install” from console, being in the cloned pln folder.
(This process is going to produce a “vendor” folder containing the depending
library.)
Enable Acron plugin and change config.inc.php variable scheduled_tasks = On
Debugging this is going to be hampered by the lack of a proper Spanish translation in your install for the PKP|PN error messages. Unfortunately there’s no good translation available for version 3.2.x of the plugin – I can think of several possible work-arounds (unless you want to create a translation manually):
Install and enable the default translation plugin (this should be available in the Plugin Gallery), or
Copy plugins/generic/pln/locale/en_US/locale.po over top of plugins/generic/pln/locale/es_ES/locale.po in order to use English strings in place of Spanish, or
Download the latest locale file and place it in plugins/generic/pln/locale/es_ES/locale.po (this may not 100% match with what the plugin expects).
With one of these, the logs should be populated with more helpful information.
Regards,
Alec Smecher
Public Knowledge Project Team