aboutsummaryrefslogtreecommitdiff
path: root/sql/catalyst
diff options
context:
space:
mode:
authorCheng Hao <hao.cheng@intel.com>2014-11-17 16:29:52 -0800
committerMichael Armbrust <michael@databricks.com>2014-11-17 16:30:23 -0800
commit7d0442652ed090783af6f2614c37a9522c46dc95 (patch)
treed5d06221a9f8e1c5b254b6df3abe1c868557002a /sql/catalyst
parent1a650e7d863b72025625c3140b038ab12ec86eca (diff)
downloadspark-7d0442652ed090783af6f2614c37a9522c46dc95.tar.gz
spark-7d0442652ed090783af6f2614c37a9522c46dc95.tar.bz2
spark-7d0442652ed090783af6f2614c37a9522c46dc95.zip
[SQL] Construct the MutableRow from an Array
Author: Cheng Hao <hao.cheng@intel.com> Closes #3217 from chenghao-intel/mutablerow and squashes the following commits: e8a10bd [Cheng Hao] revert the change of Row object 4681aea [Cheng Hao] Add toMutableRow method in object Row a751838 [Cheng Hao] Construct the MutableRow from an existed row (cherry picked from commit 69e858cc7748b6babadd0cbe20e65f3982161cbf) Signed-off-by: Michael Armbrust <michael@databricks.com>
Diffstat (limited to 'sql/catalyst')
-rw-r--r--sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Row.scala6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Row.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Row.scala
index d00ec39774..463f3667fc 100644
--- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Row.scala
+++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/Row.scala
@@ -215,9 +215,11 @@ class GenericRow(protected[sql] val values: Array[Any]) extends Row {
def copy() = this
}
-class GenericMutableRow(size: Int) extends GenericRow(size) with MutableRow {
+class GenericMutableRow(v: Array[Any]) extends GenericRow(v) with MutableRow {
/** No-arg constructor for serialization. */
- def this() = this(0)
+ def this() = this(null)
+
+ def this(size: Int) = this(new Array[Any](size))
override def setBoolean(ordinal: Int, value: Boolean): Unit = { values(ordinal) = value }
override def setByte(ordinal: Int, value: Byte): Unit = { values(ordinal) = value }