В задании Spark Streaming я использую JavaEsSpark.saveToEs
для группирования документов в индексы ES. Пока все хорошо, но меня интересует его поведение. Действительно, я заметил, что код после вызова JavaEsSpark, кажется, выполняется, тогда как он не завершен ...
if (...) {
JavaEsSpark.saveToEs(message, index_pattern+"_{target_index}/{target_type}");
}
// at last, we commit the offset ranges
((CanCommitOffsets) messages.inputDStream()).commitAsync(offsetRanges);
Как вы можете видеть, я фиксирую смещение Кафки после saveToEs
, но иногда saveToEs не удалось (что так всегда) и смещения все еще фиксируются!
Так что, если кто-то точно знает поведение этого API, я был бы рад: small_smile: