@Override
      protected List<ColumnStatistics> getJdoResult(GetHelper<List<ColumnStatistics>> ctx)
          throws MetaException, NoSuchObjectException {
        List<MPartitionColumnStatistics> mStats =
            getMPartitionColumnStatistics(getTable(), partNames, colNames, engine);
        List<ColumnStatistics> result = new ArrayList<>(Math.min(mStats.size(), partNames.size()));
        String lastPartName = null;
        List<ColumnStatisticsObj> curList = null;
        ColumnStatisticsDesc csd = null;
        for (int i = 0; i <= mStats.size(); ++i) {
          boolean isLast = i == mStats.size();
          MPartitionColumnStatistics mStatsObj = isLast ? null : mStats.get(i);
          String partName = isLast ? null : mStatsObj.getPartition().getPartitionName();
          if (isLast || !partName.equals(lastPartName)) {
            if (i != 0) {
              ColumnStatistics colStat = new ColumnStatistics(csd, curList);
              colStat.setEngine(engine);
              result.add(colStat);
            }
            if (isLast) {
              continue;
            }
            csd = StatObjectConverter.getPartitionColumnStatisticsDesc(mStatsObj);
            curList = new ArrayList<>(colNames.size());
          }
          curList.add(StatObjectConverter.getPartitionColumnStatisticsObj(mStatsObj, enableBitVector, enableKll));
          lastPartName = partName;
          Deadline.checkTimeout();
        }
        return result;
      }
Get partition's column stats

@return Map of column name and its stats
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java