近日有使用OJS期刊系统的客户和丁老师反馈,OJS3.3.X版本无法升级到3.5,升级到一半总是报错,是怎么回事呢?
错误代码:
A database error has occurred: SQLSTATE[42S22]: Column not found: 1054 Unknown column ‘s.assoc_type’ in ‘on clause’ (SQL: DELETE s FROM user_settings s – Locates all duplicated settings (same key fields, except the assoc_type/assoc_id) INNER JOIN user_settings duplicated ON s.setting_name = duplicated.setting_name AND s.user_id = duplicated.user_id AND s.locale = duplicated.locale AND ( COALESCE(s.assoc_type, -999999) <> COALESCE(duplicated.assoc_type, -999999) OR COALESCE(s.assoc_id, -999999) <> COALESCE(duplicated.assoc_id, -999999) ) – Attempts to find a better fitting record among the duplicates (preference is given to the smaller assoc_id/assoc_type values) LEFT JOIN user_settings best ON best.setting_name = duplicated.setting_name AND best.user_id = duplicated.user_id AND best.locale = duplicated.locale AND ( COALESCE(best.assoc_id, 999999) < COALESCE(duplicated.assoc_id, 999999) OR ( COALESCE(best.assoc_id, 999999) = COALESCE(duplicated.assoc_id, 999999) AND COALESCE(best.assoc_type, 999999) < COALESCE(duplicated.assoc_type, 999999) ) ) – Ensures a better record was found (if not found, it means the current duplicated record is the best and shouldn’t be removed) WHERE best.user_id IS NOT NULL)
丁老师看到后,按照他的方法亲自试了下,确实是出错,提示最高升级到3.3.19就无法继续升级了。丁老师经过不断的研究,以及和pkp官方开发团队沟通得知,在OJS3.3.X版本中,启用了某些插件后,会产生一些数据,然后可能会导致升级失败,因为OJS3.5.X并没有包含对这些第三方插件数据的容错处理,在遇到这些数据时可能会卡死。
然后根据此问题,丁老师和官方开发团队沟通,开发出了自己的升级流程,最后给这位出版社客户完美的升级,所有数据都得到了无损保留。
遇到此问题的同学,或是需要对OJS升级的客户,可以点击链接购买升级服务《OJS期刊系统升级服务》。
有做学术期刊的同学问,OJS投稿系统里的每个期刊,支持单独的邮箱设置吗?丁老师在此解答一下首先,OJS期刊投稿系统,可以添加和管理多个期刊,这个是众所周知的。涉及到期刊的邮箱设置,具体解释如下:1.针对每个期刊,可以设置不同的联系方式,...
OJS系统的search功能,默认是搜索所有期刊的内容,如果想搜索指定期刊的内容怎么办呢?经过丁老师研究,发现ojs系统是可以搜索指定期刊内容的。在默认点search后,页面的url为:https://www.ojs.com/index...
最近有同学反应,在使用OJS期刊编审系统时,对已发布的投稿文章,进行Doi提交时,提交失败,出现了503ServiceUnavailable的错误,是怎么回事呢?如图:收到该同学的故障修复请求后,丁老师对这个问题进行了研究处理。经过分析...
最近有一个同学,他们出版社使用的是3.3.0.13版本的OJS系统,最近自己在升级到3.5时,出现了错误,并且之前的数据全部丢失了,人都快吓哭了,联系丁老师进行了紧急修复。那么,是什么原因导致了OJS升级失败,如果遇到这种情况,又该怎么...