diff --git a/llap-server/src/java/org/apache/hadoop/hive/llap/io/api/impl/LlapRecordReader.java b/llap-server/src/java/org/apache/hadoop/hive/llap/io/api/impl/LlapRecordReader.java index bbfe856843..5d93884e92 100644 --- a/llap-server/src/java/org/apache/hadoop/hive/llap/io/api/impl/LlapRecordReader.java +++ b/llap-server/src/java/org/apache/hadoop/hive/llap/io/api/impl/LlapRecordReader.java @@ -181,7 +181,6 @@ private static MapWork findMapWork(JobConf job) throws HiveException { BaseWork work = null; // HIVE-16985: try to find the fake merge work for SMB join, that is really another MapWork. - /* if (inputName != null) { if (prefixes == null || !Lists.newArrayList(prefixes.split(",")).contains(inputName)) { @@ -191,7 +190,7 @@ private static MapWork findMapWork(JobConf job) throws HiveException { if (inputName != null) { work = Utilities.getMergeWork(job, inputName); } - */ + if (work == null || !(work instanceof MapWork)) { work = Utilities.getMapWork(job); } diff --git a/ql/src/test/queries/clientpositive/llap_smb.q b/ql/src/test/queries/clientpositive/llap_smb.q index 83681ea75e..b09901de89 100644 --- a/ql/src/test/queries/clientpositive/llap_smb.q +++ b/ql/src/test/queries/clientpositive/llap_smb.q @@ -1,7 +1,7 @@ set hive.mapred.mode=nonstrict; SET hive.vectorized.execution.enabled=true; -SET hive.llap.io.enabled=false; +SET hive.llap.io.enabled=true; SET hive.exec.orc.default.buffer.size=32768; SET hive.exec.orc.default.row.index.stride=1000; SET hive.optimize.index.filter=true; @@ -34,7 +34,7 @@ select y,q,count(*) from orc_a a join orc_b b on a.id=b.id group by y,q; -SET hive.llap.io.enabled=false; +SET hive.llap.io.enabled=true; set hive.enforce.sortmergebucketmapjoin=false; set hive.optimize.bucketmapjoin=true; set hive.optimize.bucketmapjoin.sortedmerge=true;