2016-05-19 3 views
0

Я делаю некоторые ETL, которые обрабатывают некоторые входные CSV-файлы и загружают затем в Neo4j с использованием данных Spring Neo4j. У меня есть 2 маршрута, который принимает входной CSV по линии и отправляет на второй маршрут, который выполняет линию нагрузки в трансациональном режиме.Как выполнять транзакции в партиях на верблюде

Ниже первый маршрут


@Override 
void configure() throws Exception { 
    from(endpoint) 
      .id('CSV_ROUTE') 
      .unmarshal(buildCsvDataFormat()) 
      .split(body()) 
      .streaming() 
      .parallelProcessing() 
      .recipientList(header('IMPORTER_ROUTE')) 

А следующий будет второй маршрут


@Override 
void configure() throws Exception { 
    from(endpoint) 
      .transacted() 
      .id(routeId) 
      .bean(importer) 
} 

Как мак e транзакция для совершения пакетами, например, из 10 строк вместо каждой строки?

Спасибо Луис Оскар

ответ

0

Вы не можете это сделать. Транзакции за сообщение в Camel.

Также сделка не является волшебной пышной пылью, которую вы можете включить, а затем все, что вы касаетесь, становится транзакционным.

В транзакциях Java часто работают только с транзакционными ресурсами, такими как JDBC и JMS.

Смежные вопросы