Current OJS Version: 3.4.0-9 (stable, restored from backup)
Target Upgrade Version: 3.5.0-0
PHP Version: 8.3.14 (or specific version)
Database: MariaDB 11.4.x
Operating System: AlmaLinux/RHEL-based
Installation Type: Production academic journals (multi-journal setup)
Current Status: System operational after backup restoration
Issue Summary:
Attempted upgrade from OJS 3.4.0-9 to 3.5.0-0 resulted in critical database corruption. Multiple migration failures created cascading schema corruption requiring complete backup restoration. System is now stable but upgrade path is blocked.
Critical Migration Failures Documented:
Error 1: MariaDB SQL Syntax Incompatibility
ERROR: Upgrade failed: DB: SQLSTATE[42000]: Syntax error or access violation: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB
server version for the right syntax to use near '''' at line 1
(Connection: mysql, SQL: alter table `email_templates_default_data` modify `locale`
varchar(28) not null default ''en'')
ERROR: Upgrade failed: DB: SQLSTATE[42S21]: Column already exists: 1060
Duplicate column name 'redirect_context_id'
(Connection: mysql, SQL: alter table `site` rename column `redirect` to `redirect_context_id`)
Analysis: Migration attempted to rename column that was already renamed in previous failed attempt
Error 3: Missing Column Dependencies
ERROR: Upgrade failed: DB: SQLSTATE[42S22]: Column not found: 1054
Unknown column 'context' in 'notification_subscription_settings'
(Connection: mysql, SQL: alter table `notification_subscription_settings` rename column `context` to `context_id`)
Analysis: Expected database schema structure doesn’t match OJS 3.4.0-9 baseline
Error 4: Schema Inconsistency
ERROR: Upgrade failed: DB: SQLSTATE[42S22]: Column not found: 1054
Unknown column 'redirect' in 'site'
(Connection: mysql, SQL: alter table `site` modify `redirect` bigint null)
Analysis: Partial migration left database in inconsistent state
Migration Failure Pattern:
[migration: PKP\migration\upgrade\v3_5_0\PreflightCheckMigration] ← Consistently fails here
[migration: APP\migration\upgrade\v3_5_0\I8333_AddMissingForeignKeys]
[revert migration: PKP\migration\upgrade\v3_5_0\PreflightCheckMigration]
[An upgrade step failed! Fallback set to 3.4.9.9] ← Artificial version, not real rollback
Corruption Cascade: Each failed retry attempt created additional schema corruption, requiring multiple backup restorations to achieve stable state.
Thank you very much for the update and for your continued support.
We’re looking forward to the release of 3.5.0-1, especially as the current upgrade path from 3.4.0-9 to 3.5.0-0 is unfortunately blocked for us.
Given the critical nature of this upgrade for production environments, especially those running multi-journal setups like ours, your efforts to resolve these issues are truly appreciated.
We’ll keep a close eye out for the release and are ready to test the update as soon as it’s available.