私は file: route camel コンポーネントを持っています。これは、停止条件として completionFromBatchConsumer を使用して AggregationStrategy を使用します。
私のアグリゲーターは CompletionAwareAggregationStrategy を実装しています
ルート自体は正常に機能します。
現在、別のプロセスによって書き込まれているファイルをスキップする readLock=changed 戦略を定義しようとしていますが、これも正常に機能します。
問題は、readLock が原因でファイルがスキップされると、バッチ サイズが更新されないように見えるため、アグリゲーターの onCompletion メソッドが呼び出されず、デッド ルートが発生することです。
キャメルはバッチのサイズを計算する前に readLock をチェックすべきではありませんか? これまたは同等の解決策を達成する方法はありますか?
TKS