protected Table createTableObject() {
    Table table = new Table(QUERY_HISTORY_DB_NAME, QUERY_HISTORY_TABLE_NAME);
    table.setProperty("EXTERNAL", "TRUE");
    table.setTableType(TableType.EXTERNAL_TABLE);

    List<FieldSchema> partCols = new ArrayList<>();

    partCols.addAll(schema.getPartCols());
    List<TransformSpec> spec = PartitionTransform.getPartitionTransformSpec(partCols);
    SessionStateUtil.addResourceOrThrow(conf, hive_metastoreConstants.PARTITION_TRANSFORM_SPEC, spec);

    return table;
  }
While creating the table, getInitialTable is supposed to return a common table object,
which contains anything general that's not specific to QueryHistoryRepository subclasses.
ql/src/java/org/apache/hadoop/hive/ql/queryhistory/repository/AbstractRepository.java