Spring int-jdbc:inbound-channel-adapter事务

时间:2018-07-28 06:09:10

标签: spring spring-integration spring-jdbc

我已经通过此链接 spring integration jdbc adapter for multiple nodes。这很有帮助。我对以下几点表示怀疑。

我有一个多线程环境(Multiple Nodes),其中有一个符合n行条件的选择查询,但是我配置了max-rows-per-poll = 5,随后是这5条记录的更新。 轮询器已配置事务。

当这5条记录由一个节点中的一个线程处理时,所有其他线程将等待,或者它们将从n-5条记录中分别选择5条记录并进行处理?

我正在使用int-jdbc:inbound-channel-adapter和Oracle数据库。

1 个答案:

答案 0 :(得分:2)

您需要阅读max-messages-per-pollmax-rowshttps://docs.spring.io/spring-integration/docs/5.0.7.RELEASE/reference/html/jdbc.html#jdbc-max-rows-per-poll-versus-max-messages-per-poll之间的区别。

对于Oracle,我也建议使用FOR UPDATE SKIP LOCKED,如果您确实想获取新记录并且不等待已被锁定。