如何解决春季数据jpa中的春季批次和真空度已满
根据使用jpa的postgres db中的真空度,我有一个问题。
据我所知,spring batch具有它自己的事务管理,但是我们需要一种机制,该机制可以定期在特定表上完全运行真空。我的主要问题是我无法在事务中完全运行真空,并且我不知道如何在春季批处理中禁用事务管理(但是我认为这是个坏主意,所以我最好不要这样做)。 / p>
我有两个可行的解决方案(但都不好,但是我找不到其他解决方案):
- 我运行的sql是“ END TRANSACTION; VACUUM FULL tablename”
- 我注入数据源并在创建语句时使用数据源并在其中运行它。
第一个解决方案很吓人,如果我在别人的代码中找到类似的东西,我可能会感到惊讶。
第二种解决方案也不太好(根据Spring Boot 2.3和Java 11项目中可用的所有工具)。
禁用春季批处理事务管理的解决方案可能是最糟糕的(我不确定我是否只能针对特定的工作禁用它,很多事情也会失败,所以我不喜欢那个想法)。
是否有可能以其他方式进行选择?还是我应该只选择一个我已经描述过的命题?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。