You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by hg...@apache.org on 2015/12/10 00:53:51 UTC
drill git commit: DRILL-4180: When clear() is called on BitVector,
ensure valueCount is set to zero
Repository: drill
Updated Branches:
refs/heads/master e822f9f59 -> 539cbba56
DRILL-4180: When clear() is called on BitVector, ensure valueCount is set to zero
Project: http://git-wip-us.apache.org/repos/asf/drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/539cbba5
Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/539cbba5
Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/539cbba5
Branch: refs/heads/master
Commit: 539cbba564db8542f72eb353f139c4d3d134b7cc
Parents: e822f9f
Author: Hsuan-Yi Chu <hs...@usc.edu>
Authored: Tue Dec 8 15:57:39 2015 -0800
Committer: Hsuan-Yi Chu <hs...@usc.edu>
Committed: Wed Dec 9 10:17:02 2015 -0800
----------------------------------------------------------------------
.../drill/exec/memory/TestAllocators.java | 24 ++++++++++++++++++++
.../org/apache/drill/exec/vector/BitVector.java | 5 ++++
2 files changed, 29 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/drill/blob/539cbba5/exec/java-exec/src/test/java/org/apache/drill/exec/memory/TestAllocators.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/test/java/org/apache/drill/exec/memory/TestAllocators.java b/exec/java-exec/src/test/java/org/apache/drill/exec/memory/TestAllocators.java
index 350e02b..aa0919a 100644
--- a/exec/java-exec/src/test/java/org/apache/drill/exec/memory/TestAllocators.java
+++ b/exec/java-exec/src/test/java/org/apache/drill/exec/memory/TestAllocators.java
@@ -49,6 +49,7 @@ import org.apache.drill.exec.server.Drillbit;
import org.apache.drill.exec.server.DrillbitContext;
import org.apache.drill.exec.server.RemoteServiceSet;
import org.apache.drill.exec.store.StoragePluginRegistry;
+import org.apache.drill.exec.vector.BitVector;
import org.apache.drill.exec.vector.IntVector;
import org.apache.drill.test.DrillTest;
import org.junit.Test;
@@ -126,6 +127,29 @@ public class TestAllocators extends DrillTest {
}
@Test
+ public void testClearBitVector() {
+ final Properties props = new Properties() {
+ {
+ put(TopLevelAllocator.TOP_LEVEL_MAX_ALLOC, "1000000");
+ put(TopLevelAllocator.ERROR_ON_MEMORY_LEAK, "true");
+ }
+ };
+ final DrillConfig config = DrillConfig.create(props);
+
+ final BufferAllocator allc = RootAllocatorFactory.newRoot(config);
+ final TypeProtos.MajorType.Builder builder = TypeProtos.MajorType.newBuilder();
+ builder.setMinorType(TypeProtos.MinorType.BIT);
+ builder.setMode(TypeProtos.DataMode.REQUIRED);
+
+ final BitVector bv = new BitVector(MaterializedField.create("Field", builder.build()), allc);
+ bv.getMutator().setValueCount(1);
+ assertEquals(bv.getAccessor().getValueCount(), 1);
+
+ bv.clear();
+ assertEquals(bv.getAccessor().getValueCount(), 0);
+ }
+
+ @Test
public void testTransfer() throws Exception {
final Properties props = new Properties() {
{
http://git-wip-us.apache.org/repos/asf/drill/blob/539cbba5/exec/vector/src/main/java/org/apache/drill/exec/vector/BitVector.java
----------------------------------------------------------------------
diff --git a/exec/vector/src/main/java/org/apache/drill/exec/vector/BitVector.java b/exec/vector/src/main/java/org/apache/drill/exec/vector/BitVector.java
index 856393d..c1504c6 100644
--- a/exec/vector/src/main/java/org/apache/drill/exec/vector/BitVector.java
+++ b/exec/vector/src/main/java/org/apache/drill/exec/vector/BitVector.java
@@ -445,4 +445,9 @@ public final class BitVector extends BaseDataValueVector implements FixedWidthVe
}
+ @Override
+ public void clear() {
+ this.valueCount = 0;
+ super.clear();
+ }
}