[英]Warning: JPA does not support custom isolation levels, so locks may not be taken when launching Jobs
在我的应用程序(Spring Boot、Spring Data JPA、Spring Batch、Postgres DB)启动期间,我收到这样的警告:
2020-03-04 11:53:24.559 WARN [-,,,] 25743 --- [ main] o.s.b.a.batch.JpaBatchConfigurer : JPA does not support custom isolation levels, so locks may not be taken when launching Jobs
我对 Spring Boot 隔离级别做了一些研究,我们有: DEFAULT
、 READ_COMMITTED
、 READ_UNCOMMITTED
、 REPEATABLE_READ
和SERIALIZABLE
。
从警告中我了解到 JPA 不支持,但只是对给定的数据库使用 DEFAULT,在我的情况下,Postgres 是READ_COMMITTED
。
我还读到 Spring 批处理事务的默认隔离级别是SERIALIZABLE
以防止同时执行相同的作业实例。
有人可以解释一下,我什么时候应该担心这个警告? 我不知道我是否应该对此做些什么。
READ_COMMITTED
应该适用于 Postgers。 从 Spring Batch 文档的 JobRepository部分的事务配置:
该方法的默认隔离级别是 SERIALIZABLE,这是非常激进的:READ_COMMITTED 也能正常工作
所以我相信这个警告可以安全地忽略。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.