Sure, go ahead. To confirm, you'd like to submit a bug-fix PR as well, right? I started looking into it, and I think a quick fix might look like:
private HiveLock lockObject(org.apache.hadoop.hive.metastore.api.Table hmsTable) { if (hiveLockEnabled(hmsTable, conf)) { return new MetastoreLock( conf, new CachedClientPool(conf, Maps.fromProperties(catalogProperties)), catalogProperties.getProperty(Catalogs.NAME), hmsTable.getDbName(), hmsTable.getTableName()); } else { return new NoLock(); } } private static boolean hiveLockEnabled(org.apache.hadoop.hive.metastore.api.Table hmsTable, Configuration conf) { if (SessionStateUtil.getQueryState(conf).map(QueryState::getHiveOperation) .filter(opType -> HiveOperation.ANALYZE_TABLE == opType) .isPresent()) { return false; } if (hmsTable.getParameters().containsKey(TableProperties.HIVE_LOCK_ENABLED)) { // We know that the property is set, so default value will not be used, return Boolean.parseBoolean( hmsTable.getParameters().getOrDefault(TableProperties.HIVE_LOCK_ENABLED, "false")); } return conf.getBoolean( ConfigProperties.LOCK_HIVE_ENABLED, TableProperties.HIVE_LOCK_ENABLED_DEFAULT); }