public List buildQueries()

in dbeam-core/src/main/java/com/spotify/dbeam/args/QueryBuilderArgs.java [123:149]


  public List<String> buildQueries(final Connection connection) throws SQLException {
    QueryBuilder queryBuilder = this.baseSqlQuery();
    if (this.partitionColumn().isPresent() && this.partition().isPresent()) {
      queryBuilder =
          configurePartitionCondition(
              this.partitionColumn().get(),
              this.partition().get(),
              partitionPeriod(),
              queryBuilder);
    }
    if (this.limit().isPresent()) {
      queryBuilder =
          queryBuilder.withLimit(
              queryParallelism().map(k -> limit().get() / k).orElse(limit().get()));
    }

    if (queryParallelism().isPresent() && splitColumn().isPresent()) {
      long[] minMax = findInputBounds(connection, queryBuilder, splitColumn().get());
      long min = minMax[0];
      long max = minMax[1];

      return queriesForBounds(
          min, max, queryParallelism().get(), splitColumn().get(), queryBuilder);
    } else {
      return Lists.newArrayList(queryBuilder.build());
    }
  }