Skip to content

DistributingExecutor

Creating Instance

DistributingExecutor takes the following to be created:

  • KsqlConfig
  • CommandQueue
  • Distributed Command Response Timeout
  • BiFunction<KsqlExecutionContext, ServiceContext, Injector>
  • KsqlAuthorizationValidator
  • ValidatedCommandFactory
  • Error Handler
  • CommandRunner Warning (Supplier<String>)

DistributingExecutor is created when:

Executing Statement

StatementExecutorResponse execute(
  ConfiguredStatement<? extends Statement> statement,
  KsqlExecutionContext executionContext,
  KsqlSecurityContext securityContext)

execute requests the injectorFactory to inject into the given ConfiguredStatement.

For InsertIntos, execute validateInsertIntoQueries.

execute requests the CommandQueue for a transactional Kafka producer (Producer<CommandId, Command> to produce to the command topic).

execute initialize transactions (using Kafka's Producer.initTransactions).

execute starts a transaction (using Kafka's Producer.beginTransaction).

execute requests the CommandQueue to waitForCommandConsumer.

execute...FIXME

execute requests the CommandQueue to enqueue the command and commits the transaction (using Kafka's Producer.commitTransaction).

execute...FIXME

execute is used when:

Back to top