Clients shouldn't await for the result by calling Future.get. Use
InvokerHandler.submitAsInParallelTransaction(SessionData, TransactionLevel, Consumer) instead.
For scripts, use custom background tasks instead, because runAsInParallelTransaction may commit while the main
transaction rolls-back, which would probably make the system inconsistent. With custom background tasks, if the
main transaction rolls back, so will all the scheduled background task executions be rolled-back.