最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

即时焦点:org.quartz.JobPersistenceException: Couldn't retrieve trigger: invalid stream header: EFBFBDEF

来源:博客园


(相关资料图)

项目工程集成quartz2.3.2,需要在内网环境重新部署一套,包括需要dump表结构和数据。

将原数据库所有表结构和表内数据导出并导入到内网数据库,并没有做任何特殊处理,启动工程后项目启动报错:

在网上搜索了许多上图错误信息都没得到启发,知道看到大佬一篇随笔postgres 中报错 org.quartz.JobPersistenceException: Couldn"t store trigger,invalid stream header

quartz 使用的表qrtz_job_details 中的字段 job_data 字段类型不正确, 在 mydql 中,是 blob 类型,二进制 大对象,但在postgres数据库中是没有 blob 类型,应该对应bytea类型,即二进制

quartz 的qrtz_triggers 表中的 job_data 必须要与 qutz_job_details 表中的 job_data 字段一致

一语惊醒,在之前的数据库导出导入操作,都是带数据导入的,结合上述报错,十有八九应该是导入的数据有问题,随即从这个角度下手排查问题。

将quartz的qrtz_triggers表和qrtz_job_details表的数据全删除后重启服务果然不再报错。

关键词: 表内数据 十有八九 错误信息