HiveConf setUpDriverSession(
            HiveConf sourceConf,
            String compactionQueueName,
            Map<String, String> tableProperties,
            Map<String, String> ciProperties) {

        HiveConf conf = new HiveConf(sourceConf);

        //so that Driver doesn't think it's already in a transaction
        conf.unset(ValidTxnList.VALID_TXNS_KEY);

        overrideConfProps(conf, ciProperties, tableProperties);

        if (isNotBlank(compactionQueueName)) {
            conf.set(TezConfiguration.TEZ_QUEUE_NAME, compactionQueueName);
        }

        return conf;
    }
This doesn't throw any exceptions because we don't want the Compaction to appear as failed
if stats gathering fails since this prevents Cleaner from doing it's job and if there are
multiple failures, auto initiated compactions will stop which leads to problems that are
much worse than stale stats.

todo: longer term we should write something COMPACTION_QUEUE.CQ_META_INFO.  This is a binary
field so need to figure out the msg format and how to surface it in SHOW COMPACTIONS, etc

@param ci Information about the compaction being run
@param hiveConf The hive configuration object
@param userName The user to run the statistic collection with
@param compactionQueueName The name of the compaction queue
ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/StatsUpdater.java