private TransactionManager getManagerWithCallback(boolean initializeAsync,
Callback<TransactionManager> callBack, ScheduledExecutorService executor) {
return SerializableTransactionManager.create(
MetricsManagers.createForTests(),
mockKvs,
mockTimelockService,
mockTimestampManagementService,
null,
null,
() -> null,
null,
null,
mockCleaner,
mockInitializer::isInitialized,
false,
TransactionTestConstants.GET_RANGES_THREAD_POOL_SIZE,
TransactionTestConstants.DEFAULT_GET_RANGES_CONCURRENCY,
initializeAsync,
TimestampCache.createForTests(),
MultiTableSweepQueueWriter.NO_OP,
callBack,
executor,
true,
() -> ImmutableTransactionConfig.builder().build());
}