0
votes

I was trying to use JDBC inbound channel adapter and I encountered some confusions.

First, which one is more efficient to use: specifying max-rows-per-poll or using limit on query statement? Second, to avoid the duplicate readings, is there anyway to run poller instead of fixed-rate after last message of each poll is processed? I could use update but there is dynamic update query down the stream.

My integration flow is somewhat like jdbc:inbound-channel-adapter -> http:outbound-channel-adapter -> jdbc:outbound-channel-adapter (update each row as per response from http:outbound-channel-adapter). It should handle huge number of rows.

1

1 Answers

0
votes
  1. LIMIT is more efficient.
  2. As long as you use DirectChannels (the default), and no task executor on the poller, the next poll won't run until the current one completes, regardless of the trigger.