aboutsummaryrefslogtreecommitdiff
path: root/exec/java-exec/src/main
diff options
context:
space:
mode:
authorJinfeng Ni <jni@maprtech.com>2014-08-28 15:27:11 -0700
committerJacques Nadeau <jacques@apache.org>2014-08-29 00:14:31 -0700
commit4dcac1909eb687d226136c5794b2cf0c07e5733a (patch)
tree85d7c71bafe6d07401068ed14c1c21f71a6cead9 /exec/java-exec/src/main
parentf7d575b4d2dc9cd4375adca5d26b97b6084df3ec (diff)
DRILL-1265: Drill may incorrectly return null when evaluates an expression of repeated list. The fix is to correctly set offsets vectors for repeated list vector.
Diffstat (limited to 'exec/java-exec/src/main')
-rw-r--r--exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/RepeatedListVector.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/RepeatedListVector.java b/exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/RepeatedListVector.java
index 00716cf0b..f903b0ca4 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/RepeatedListVector.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/vector/complex/RepeatedListVector.java
@@ -324,8 +324,9 @@ public class RepeatedListVector extends AbstractContainerVector implements Repea
for(int i = holder.start; i < holder.end; i++, newIndex++){
if(!vectorTransfer.copyValueSafe(i, newIndex)) return false;
}
- if(!this.to.offsets.getMutator().setSafe(to, newIndex)) return false;
+ if(!this.to.offsets.getMutator().setSafe(to + 1, newIndex)) return false;
+ this.to.lastSet++;
return true;
}