docs: private void flushUpdateQueue() {
          LOG.debug("Run flushUpdateQueue.");
  
          final int size = queue.size();
          if (size <= 0) {
              return;
          }
  
          LOG.debug("{} events in flushUpdateQueue.", size);
  
          final Set<TargetPoll> events = Sets.newHashSetWithExpectedSize(queue.size());
          final int drained = queue.drainTo(events);
  
          if (drained <= 0) {
              return;
          }
  
          try {
              events.stream().collect(Collectors.groupingBy(TargetPoll::getTenant)).forEach((tenant, polls) -> {
                  final TransactionCallback<Void> createTransaction = status -> updateLastTargetQueries(tenant, polls);
                  tenantAware.runAsTenant(tenant,
                          () -> DeploymentHelper.runInNewTransaction(txManager, "flushUpdateQueue", createTransaction));
              });
          } catch (final RuntimeException ex) {
              LOG.error("Failed to persist UpdateQueue content.", ex);
              return;
          }
  
          LOG.debug("{} events persisted.", drained);
      }