diff --git a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java index 128b66c..ba0d56a 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDTFGetSplits.java @@ -41,6 +41,8 @@ import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.Text; +import org.apache.hadoop.hive.common.ValidTxnList; +import org.apache.hadoop.hive.common.ValidTxnWriteIdList; import org.apache.hadoop.hive.conf.HiveConf; import org.apache.hadoop.hive.conf.HiveConf.ConfVars; import org.apache.hadoop.hive.llap.FieldDesc; @@ -307,6 +309,17 @@ public PlanFragment createPlanFragment(String query, int num, ApplicationId spli needsCleanup = false; } + // Pass the ValidTxnList and ValidTxnWriteIdList snapshot configurations corresponding to the input query + HiveConf driverConf = driver.getConf(); + String validTxnString = driverConf.get(ValidTxnList.VALID_TXNS_KEY); + if (validTxnString != null) { + jc.set(ValidTxnList.VALID_TXNS_KEY, validTxnString); + } + String validWriteIdString = driverConf.get(ValidTxnWriteIdList.VALID_TABLES_WRITEIDS_KEY); + if (validWriteIdString != null) { + jc.set(ValidTxnWriteIdList.VALID_TABLES_WRITEIDS_KEY, validWriteIdString); + } + return new PlanFragment(tezWork, schema, jc); } finally { if (needsCleanup) {