aboutsummaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorReynold Xin <rxin@databricks.com>2015-08-03 11:22:02 -0700
committerReynold Xin <rxin@databricks.com>2015-08-03 11:22:02 -0700
commit7a9d09f0bb472a1671d3457e1f7108f4c2eb4121 (patch)
tree54c30670877f59499a6982da41cfaeb207432252 /sql
parentdfe7bd168d9bcf8c53f993f459ab473d893457b0 (diff)
downloadspark-7a9d09f0bb472a1671d3457e1f7108f4c2eb4121.tar.gz
spark-7a9d09f0bb472a1671d3457e1f7108f4c2eb4121.tar.bz2
spark-7a9d09f0bb472a1671d3457e1f7108f4c2eb4121.zip
[SQL][minor] Simplify UnsafeRow.calculateBitSetWidthInBytes.
Author: Reynold Xin <rxin@databricks.com> Closes #7897 from rxin/calculateBitSetWidthInBytes and squashes the following commits: 2e73b3a [Reynold Xin] [SQL][minor] Simplify UnsafeRow.calculateBitSetWidthInBytes.
Diffstat (limited to 'sql')
-rw-r--r--sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/expressions/UnsafeRow.java2
-rw-r--r--sql/core/src/test/scala/org/apache/spark/sql/UnsafeRowSuite.scala10
2 files changed, 11 insertions, 1 deletions
diff --git a/sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/expressions/UnsafeRow.java b/sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/expressions/UnsafeRow.java
index f4230cfaba..e6750fce4f 100644
--- a/sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/expressions/UnsafeRow.java
+++ b/sql/catalyst/src/main/java/org/apache/spark/sql/catalyst/expressions/UnsafeRow.java
@@ -59,7 +59,7 @@ public final class UnsafeRow extends MutableRow {
//////////////////////////////////////////////////////////////////////////////
public static int calculateBitSetWidthInBytes(int numFields) {
- return ((numFields / 64) + (numFields % 64 == 0 ? 0 : 1)) * 8;
+ return ((numFields + 63)/ 64) * 8;
}
/**
diff --git a/sql/core/src/test/scala/org/apache/spark/sql/UnsafeRowSuite.scala b/sql/core/src/test/scala/org/apache/spark/sql/UnsafeRowSuite.scala
index c5faaa663e..89bad1bfda 100644
--- a/sql/core/src/test/scala/org/apache/spark/sql/UnsafeRowSuite.scala
+++ b/sql/core/src/test/scala/org/apache/spark/sql/UnsafeRowSuite.scala
@@ -28,6 +28,16 @@ import org.apache.spark.unsafe.memory.MemoryAllocator
import org.apache.spark.unsafe.types.UTF8String
class UnsafeRowSuite extends SparkFunSuite {
+
+ test("bitset width calculation") {
+ assert(UnsafeRow.calculateBitSetWidthInBytes(0) === 0)
+ assert(UnsafeRow.calculateBitSetWidthInBytes(1) === 8)
+ assert(UnsafeRow.calculateBitSetWidthInBytes(32) === 8)
+ assert(UnsafeRow.calculateBitSetWidthInBytes(64) === 8)
+ assert(UnsafeRow.calculateBitSetWidthInBytes(65) === 16)
+ assert(UnsafeRow.calculateBitSetWidthInBytes(128) === 16)
+ }
+
test("writeToStream") {
val row = InternalRow.apply(UTF8String.fromString("hello"), UTF8String.fromString("world"), 123)
val arrayBackedUnsafeRow: UnsafeRow =