Upgrading OJS from 2.2.3 to OJS 2.4.6

Hi @zoumbar2,

What was your old version of OJS? I presume you’re upgrading to OJS 2.4.6?

Regards,
Alec Smecher
Public Knowledge Project Team

We were using Ojs 2.2.3

Hi @zoumbar2,

Wow, that’s a very old OJS. It’s possible that a bug has crept into the upgrade system for versions that old. Nonetheless, there should be a copyed_assignments table in your OJS 2.2.3 database. Can you check whether it exists in your backup? If it does, then perhaps OJS is dropping it then trying to use it afterwards during the upgrade process.

Regards,
Alec Smecher
Public Knowledge Project Team

Hello,

I just finished checking our backups. The copyed_assignments table does exists in our backup. While it doesn’t exist after the update. What can we do to upgrade the database?

Hi @zoumbar2,

Would you we willing to pass me a link privately to a copy of your database dump? I could run a quick local test and see what’s happening.

Regards,
Alec Smecher
Public Knowledge Project Team

Yes, I can send you a copy of the database dump. How would you like me to send it?

Hi @zoumbar2,

Looking at your database dump, it seems that the review_rounds table is missing the article_id column, which should be present in OJS 2.2.3. That’s why your database upgrade is crashing. Do you know why that column might be missing?

Regards,
Alec Smecher
Public Knowledge Project Team

I have no idea why that column would be missing. Far as I’m aware of, no one has manually edited the database before. So, if we added the column, would this allow us to upgrade?

Hi @zoumbar2,

Adding the column isn’t the problem, it’s reconstructing the data that used to be in it. Your review_rounds table only has round and review_revision columns, and it’s not possible with just those to know what article each entry is referring to. I don’t think your old OJS 2.2.3 installation is likely to be working properly without this.

If you’ve only had single-round review processes, you might be able to work around this missing data by adding an entry for every article_id in the system with a round and review_revision of 1. I’d suggest giving that a try.

Regards,
Alec Smecher
Public Knowledge Project Team

Hi,
I have also the same problem i’m trying to upgrade from OJS 2.2.3 to 2.4.6, but i get the same Message “Table ‘ojs.copyed_assignments’ doesn’t exist”.
I show to my database but the table is there and as i read from asmecher i look into review_rounds table and my article_id column is missing and other columns has been added, instead i have the columns submission_id,round,review_revision,review_round_id,stage_id(all values NULL),status(also all values NULL).
The column “submission_id” shows to be the article_id column, so it is not missing really, however i get this message error also???

Regards from Germany ,
Peter

Hi @pitertennis_paco,

Have you tried to run subsequent upgrades after an upgrade failure? If so, then your database is already in a state somewhere between the two versions, which is why you’re seeing that problem. Make sure you restore your database to the state it was in before you first tried to run the upgrade, then report any error message you get when you try to upgrade.

Regards,
Alec Smecher
Public Knowledge Project Team

I do not run subsequent upgrades after an upgrade failure, the database i use every time is the database from my backup that i make. My Backup-database shows like this:

| article_id | round | review_revision |
±-----------±------±----------------+
| 114 | 1 | 1 |

DIRECT AFTER push the button upgrade my database splits to this:

| submission_id | round | review_revision | review_round_id | stage_id | status |
±--------------±------±----------------±----------------±---------±-------+
| 114 | 1 | 1 | 1 | NULL | NULL |

this only happens when i try to upgrade to 2.4.6, trying to upgrade again to 2.2.3 this not happens and everything works fine.

thanks for the help!!

the first time i push the button i get this message:

DB Error: Duplicate entry ‘interest-4096-87’ for key ‘controlled_vocab_symbolic’

and then this one

A database error has occurred: Table ‘ojs.copyed_assignments’ doesn’t exist

now i try to upgrade from 2.2.3 to 2.4.7 and i get the same error message but to upgrade to 2.3.0 works fine, now i will try to upgrade one version to another peu a peu maybe i could go so far to version 2.4.6.

Hi asmecher,
thank you very much for your help.

I follow your instructions, however it does not work, i get the same error message.

I started with OJS since the version 2.2.0 was out, I do only one Upgrade to 2.2.2 and now I do the third to 2.3.6(because i do not get it to upgrade to 2.4.6), but to make a upgrade to a greater version shows to be impossible, because the database splits out. Do you know if someone get it to upgrade from a early version to 2.4.6 or experiences how handle this problem ?

Regards from Germany,
Peter

i found the solution for this problem and i get it work, without my database splits out !!!

from OJS 2.2.0 to 2.4.6 ^^

Hi @pitertennis_paco,

Glad you got it working!

Regards,
Alec Smecher
Public Knowledge Project Team

Hi @pitertennis_paco and @asmecher,
I seem to be in the same situation you were and finally solved. I am upgrading from a 2.2.1 to a 2.4.7-1 via web interface.
When clicking on upgrade database button, I got the message
DB Error: Duplicate entry 'interest-4096-90' for key 'controlled_vocab_symbolic'

Would you be willing to post your solution?That would help a lot!!
Thanks in advance.

Regards,
Juan

to solve the problem you should first make the upgrade to 2.3.6 and then to 2.4.7 that should be work!!! the reason why you could not upgrade directly to 2.4.7 is that the database changed and this changes will do in 2.3.6… if you do not do the changes in your database ojs 2.4.7 would not accept the upgrade and every time call a error message. hope this work for you.

regards
peter

1 Like

Hi Peter,
Thanks for your advice!!
I’ll give it a try and let you know.
Regards,
Juan