aboutsummaryrefslogtreecommitdiff
path: root/exec/vector
diff options
context:
space:
mode:
authorVlad Rozov <vrozov@apache.org>2017-12-12 13:37:38 -0800
committerParth Chandra <parthc@apache.org>2018-01-11 17:18:29 -0800
commit58f6b32af388ee8f120107a20e787722e80c0f67 (patch)
treed64c63ae2b5266f6ca998a4c372ca79f42cb0b14 /exec/vector
parent90eb23baa6a1a205fd0821c7af708969fcb98c5c (diff)
DRILL-6004: Direct buffer bounds checking should be disabled by default
This closes #1070
Diffstat (limited to 'exec/vector')
-rw-r--r--exec/vector/src/main/java/org/apache/drill/exec/expr/fn/impl/ByteFunctionHelpers.java17
1 files changed, 5 insertions, 12 deletions
diff --git a/exec/vector/src/main/java/org/apache/drill/exec/expr/fn/impl/ByteFunctionHelpers.java b/exec/vector/src/main/java/org/apache/drill/exec/expr/fn/impl/ByteFunctionHelpers.java
index bd06ba5c7..0ecd9d19c 100644
--- a/exec/vector/src/main/java/org/apache/drill/exec/expr/fn/impl/ByteFunctionHelpers.java
+++ b/exec/vector/src/main/java/org/apache/drill/exec/expr/fn/impl/ByteFunctionHelpers.java
@@ -21,11 +21,12 @@ package org.apache.drill.exec.expr.fn.impl;
import io.netty.buffer.DrillBuf;
import io.netty.util.internal.PlatformDependent;
-import org.apache.drill.exec.memory.BoundsChecking;
import org.apache.drill.exec.util.DecimalUtility;
import com.google.common.primitives.UnsignedLongs;
+import static org.apache.drill.exec.memory.BoundsChecking.rangeCheck;
+
public class ByteFunctionHelpers {
static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(ByteFunctionHelpers.class);
@@ -41,10 +42,7 @@ public class ByteFunctionHelpers {
* @return 1 if left input is greater, -1 if left input is smaller, 0 otherwise
*/
public static final int equal(final DrillBuf left, int lStart, int lEnd, final DrillBuf right, int rStart, int rEnd){
- if (BoundsChecking.BOUNDS_CHECKING_ENABLED) {
- left.checkBytes(lStart, lEnd);
- right.checkBytes(rStart, rEnd);
- }
+ rangeCheck(left, lStart, lEnd, right, rStart, rEnd);
return memEqual(left.memoryAddress(), lStart, lEnd, right.memoryAddress(), rStart, rEnd);
}
@@ -95,10 +93,7 @@ public class ByteFunctionHelpers {
* @return 1 if left input is greater, -1 if left input is smaller, 0 otherwise
*/
public static final int compare(final DrillBuf left, int lStart, int lEnd, final DrillBuf right, int rStart, int rEnd){
- if (BoundsChecking.BOUNDS_CHECKING_ENABLED) {
- left.checkBytes(lStart, lEnd);
- right.checkBytes(rStart, rEnd);
- }
+ rangeCheck(left, lStart, lEnd, right, rStart, rEnd);
return memcmp(left.memoryAddress(), lStart, lEnd, right.memoryAddress(), rStart, rEnd);
}
@@ -150,9 +145,7 @@ public class ByteFunctionHelpers {
* @return 1 if left input is greater, -1 if left input is smaller, 0 otherwise
*/
public static final int compare(final DrillBuf left, int lStart, int lEnd, final byte[] right, int rStart, final int rEnd) {
- if (BoundsChecking.BOUNDS_CHECKING_ENABLED) {
- left.checkBytes(lStart, lEnd);
- }
+ rangeCheck(left, lStart, lEnd);
return memcmp(left.memoryAddress(), lStart, lEnd, right, rStart, rEnd);
}