After upgrade to, NULL plugin errors flooding PHP log

After upgrading → → (innoDB conversion) →, our PHP error log is being flooded with messages like:

[Tue Feb 13 13:58:28.458671 2024] [php:notice] [pid 21570] [client] Exception: Plugin healthSciences expected to inherit from HealthSciencesThemePlugin, actual type NULL in /folder/subfolder/subsubfolder/lib/pkp/classes/plugins/PluginRegistry.php

I’ve seen a few other posts like this but there hasn’t really been any clear cut conclusion on a way to handle it. It seems like orphan plugin database records to me, where there is still an entry in the database for them, but no way to handle them in the plugins GUI. Some say to manually delete from the versions table, but what about plugin_settings? Are there others? Any ramifications to this method?

They don’t seem to be outwardly causing any problems with OJS functionality, but they are making our PHP logs very difficult to use for real purposes, and I have concerns down the line this problem could get worse. There are about 12 old, orphaned plugins that log the same error and clearly others suffer this fate as well from the prior posts.

Is there any official way to clean up old plugins from the database that we can no longer interact with in the GUI? The folder for these have not existed for a long time.


Make a backup of your ojs database.

Delete the offending plugins in the ‘versions’ table in the ojs database.

Hi all,

You can also suppress those warnings by applying this change in lib/pkp; this will be included in the next OJS 3.4.0-x release.

Alec Smecher
Public Knowledge Project Team

Just tried this one line tweak, appears to have properly suppressed the log messages. I’d rather this than go messing with possibly creating orphan db entries for what are already sort of orphan plugins.


1 Like

Thank you @asmecher as I too would prefer not to mess with the db. Good to also know that it will be included in the next update to OJS.

1 Like

This topic was automatically closed after 11 days. New replies are no longer allowed.