Вот упрощенная версия маршрута:
Код: Выделить всё
from("sftp://my-server/path?options...")
.split()
.tokenizeXML("", "")
.streaming()
.parallelProcessing()
.process(myRecordProcessor)
.end();
We are using the default shutdown settings from Apache Camel 4.x:
Timeout: 45 seconds
Shutdown Now On Timeout: true
Log Inflight Exchanges On Timeout: true
Shutdown Routes In Reverse Order: true
Отслеживание сообщений в полете работает, как и ожидалось - контекст верблюда отключается чисто через 45 секунд, если сообщение не завершено. Это означает, что файл только частично обрабатывается, а остальные записи теряются.
Вопрос :
Есть ли способ заставить верблюда ждать внутренних параллельных задач внутри A .split (). ParalleleLprocessing () , чтобы закончить, прежде чем лечить обмен Flustight, или задержка, или задержка, или задержка, или задержка, задерживая все, что задерживает все, что задерживает все, что задерживает все, что задерживает все, или задерживает все, что задерживает все, или задерживает все, что задерживает все, или задерживает все, что задерживает все эти, или задерживает все эти /> Любые идеи или рекомендуемые подходы высоко ценится! < /p>
Подробнее здесь: https://stackoverflow.com/questions/796 ... n-the-rout