@Override protected CompletionStage<AsyncResultSet> newCompletionStage() {
    int i = 0;
    BoundStatementBuilder bound = preparedStatement.boundStatementBuilder()
      .setString(i++, input.service())
      .setString(i++, input.span())
      .setInt(i++, input.bucket())
      .setUuid(i++, input.start_ts())
      .setUuid(i++, input.end_ts());

    if (input.start_duration() != null) {
      bound.setLong(i++, input.start_duration());
      bound.setLong(i++, input.end_duration());
    }

    bound
      .setInt(i, input.limit_())
      .setPageSize(input.limit_());

    return factory.session.executeAsync(bound.build());
  }
Applies all deferred service names to all input templates
zipkin-storage/cassandra/src/main/java/zipkin2/storage/cassandra/SelectTraceIdsFromServiceSpan.java