[Ojs 3.2.1-4] to [OJS 3.3.0-6] upgrade fail question: ERROR: Upgrade failed: DB: SQLSTATE[22004]: Null value not allowed

So i’ve successfully upgraded from 2.4.8 to 3.2.1-4, backup the current file system and SQL database.
And now started upgrade from 3.2.1-4 to 3.3.0-6
Here comes a new problem:

[code: Installer Installer::migrateStaticPagesToNavigationMenuItems]
[migration: PKPv3_3_0UpgradeMigration]
ERROR: Upgrade failed: DB: SQLSTATE[22004]: Null value not allowed: 1138 Invalid use of NULL value (SQL: ALTER TABLE authors CHANGE publication_id publication_id BIGINT NOT NULL)

screenshot of ssh

Here is what the null values like in the table authors:

null value from authors

These looks like dummy email addresses added in quicksubmit plugin in the 2.4.8 version.

My question is: Will delete all entries in the author table where publication_id is NULL solve the trick without further problem or it is totally not safe to do so? maybe these author entries are still useful in the system? i have no clue. Please help. @asmecher

I’ve been searching in the forum haven’t found a similar question.

Thanks in advance.


Hi Stanley,

Do you have other authors in the authors table where the publication id is not null? Just want to make sure that there exists otherwise sane data before deleting records.

Otherwise, yes, you can probably delete those records.


Yes there are 256 value = NULL, rest of them are not


I’ve delete all entries where publication_id is NULL from author table.

And the upgrade is done:

Successfully upgraded to version

In my case i had just one entry. I removed it and the update went fine for me.