近日有使用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期刊系统升级服务》。
使用过Open Journal System期刊管理系统(OJS)的朋友都知道,OJS在文章的投稿、评审、校验流程中,可以自动发送邮件给对应的作者、编辑、评审人等。但有客户提出咨询了,只想让作者快速的提交稿件,不想发邮件,想跳过这一步骤...
OJS(Open Journal Systems)期刊管理系统,是目前主流和使用广泛的期刊学术系统,在使用OJS系统管理期刊文章的过程中,经常会有同学发现,OJS的相关图片在设置后,总是不能及时更新,比如期刊封面图、期号封面图、期刊Lo...
OJS是什么?OJS全称是Open Journal Systems,是一款用于学术期刊行业的期刊管理、论文投稿、稿件编审系统的软件。由加拿大西蒙弗雷泽大学团队研发,是全球使用最广泛的学术出版平台,是一个高度灵活的编辑作期刊管理和出版系统...
最近有使用Open Journal System(简称OJS系统)的出版社客户咨询,他们的期刊管理系统,被网安监管机构下发了《XX存在安全隐患的函》,内容是说存在任意文件上传漏洞(如下方图示),被要求整改,所以特地咨询丁老师,这种情况需...