ETA:澄清上下文:默认情况下,BATCH_STEP_EXECUTION.EXIT_MESSAGE(填充失败步骤的错误代码)定义为VARCHAR2(2500)。
当步骤失败时,错误消息通常是10k - 15k的堆栈跟踪。前2500个字符很少能够洞察问题。两个问题:
1)我可以安全地将列类型从VARCHAR2(2500)更改为VARCHAR2(4000)吗?或者更好的是,CLOB?
2)我是否需要在Spring Batch中进行任何更改来说:“发送exit_message为4000,或者无限制地使用CLOB,而不是将其切换为2500个字符”,这是可以的吗?
答案 0 :(得分:0)
@KevinKirkpatrick, 我相信你可以将EXIT_MESSAGE长度增加到varchar2(4000)或将数据类型更改为CLOB。这两个选项似乎都基于我的测试。
需要更新jobRepository以包含max_varchar-length。 例如:
<batch:job-repository id="j1" max-varchar-length="100000"/>
我不知道这是否是一个很好的解决方案。更改Spring Batch表上的数据类型似乎不太理想。