Class BatchSourceExecutor<T>

java.lang.Object
org.apache.pulsar.functions.source.batch.BatchSourceExecutor<T>
All Implemented Interfaces:
AutoCloseable, Source<T>

public class BatchSourceExecutor<T> extends Object implements Source<T>
BatchSourceExecutor wraps BatchSource as Source. Thus from Pulsar IO perspective, it is running a regular streaming source. The BatchSourceExecutor orchestrates the lifecycle of BatchSource. The current implementation uses an intermediate topic between the discovery process and the actual batchsource instances. The Discovery is run on 0th instance. Any tasks discovered during the discover are written to the intermediate topic. All the instances consume tasks from this intermediate topic using a shared subscription.