gpt4 book ai didi

java - quartz ,设置 postgres 模式,JOB_DATA 应该是什么?

转载 作者:行者123 更新时间:2023-11-29 14:34:49 26 4
gpt4 key购买 nike

我正在使用 liquibase 根据 Bert R recipe 为 quartz 设置数据库表.

postgres 的 JOB_DATA 列的正确类型是什么?

原始错误是

Caused by: org.quartz.JobPersistenceException: Couldn't retrieve trigger: 2
at org.quartz.impl.jdbcjobstore.JobStoreSupport.retrieveTrigger(JobStoreSupport.java:1538)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 2
at org.postgresql.util.PGbytea.toBytes(PGbytea.java:76)

基本错误是 PostgreSQlDelegate.java 试图从 qrtz_triggers 表中读取 JOB_DATA 列。此专栏中确实只有\x。

我已经更改了上面的 liquibase 文件以将类型从 BLOB 更改为 BYTEA,因为我遇到了错误

column "job_data" is of type oid but expression is of type bytea

quartz 属性文件包含作业存储的以下设置

# Job Store
org.quartz.jobStore.class=org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass =
org.quartz.impl.jdbcjobstore.PostgreSQLDelegate

最佳答案

该列的数据类型应该是bytea。简单的确认方式

  1. 转到 http://www.quartz-scheduler.org/downloads/
  2. 下载你的 quartz 版本并解压
  3. 转到 docs/dbTables 并查找 tables_postgres.sql

在那里你会发现job_data的数据类型为bytea

现在,将数据类型修改为 bytea 后,您面临的第二个问题请查看此链接是否可以解决问题? PostgreSQL - Quartz JDBC-JobStoreTX - getTriggersForJob - ArrayIndexOutOfBoundsException

关于java - quartz ,设置 postgres 模式,JOB_DATA 应该是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46800964/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com