public Map<String, Map<String, String>> updatePartitionColumnStatisticsBatch(
                                                      Map<String, ColumnStatistics> partColStatsMap,
                                                      Table tbl,
                                                      List<TransactionalMetaStoreEventListener> listeners,
                                                      String validWriteIds, long writeId)
          throws MetaException {
    long numStats = 0;
    for (Map.Entry entry : partColStatsMap.entrySet()) {
      ColumnStatistics colStats = (ColumnStatistics) entry.getValue();
      numStats += colStats.getStatsObjSize();
    }
    long csId = directSqlUpdatePart.getNextCSIdForMPartitionColumnStatistics(numStats);
    return directSqlUpdatePart.updatePartitionColumnStatistics(partColStatsMap, tbl, csId, validWriteIds, writeId, listeners);
  }
Checks if the column descriptors still has references for other SD-s. If not, then removes
them. Should be called with the list short enough to not trip up Oracle/etc.
@param columnDescriptorIdList The column identifiers
@throws MetaException If there is an SQL exception during the execution it converted to
MetaException
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java