private List<ColumnStatisticsObj> columnStatisticsObjForPartitions(
      final String catName, final String dbName, final String tableName, final List<String> partNames,
      List<String> colNames, String engine, long partsFound, final boolean useDensityFunctionForNDVEstimation,
      final double ndvTuner, final boolean enableBitVector, boolean enableKll) throws MetaException {
    final boolean areAllPartsFound = (partsFound == partNames.size());
    return Batchable.runBatched(batchSize, colNames, new Batchable<String, ColumnStatisticsObj>() {
      @Override
      public List<ColumnStatisticsObj> run(final List<String> inputColNames) throws MetaException {
        return Batchable.runBatched(batchSize, partNames, new Batchable<String, ColumnStatisticsObj>() {
          @Override
          public List<ColumnStatisticsObj> run(List<String> inputPartNames) throws MetaException {
            return columnStatisticsObjForPartitionsBatch(catName, dbName, tableName, inputPartNames,
                inputColNames, engine, areAllPartsFound, useDensityFunctionForNDVEstimation, ndvTuner,
                enableBitVector, enableKll);
          }
        });
      }
    });
  }
Retrieve the column statistics for the specified columns of the table. NULL
is returned if the columns are not provided.
@param catName     the catalog name of the table
@param dbName      the database name of the table
@param tableName   the table name
@param colNames    the list of the column names
@param engine      engine making the request
@return            the column statistics for the specified columns
@throws MetaException
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java