Skip to content

Commit edac3cd

Browse files
committed
Makes ColumnAccessor.extractSingle row based
1 parent 8216936 commit edac3cd

2 files changed

Lines changed: 8 additions & 5 deletions

File tree

sql/core/src/main/scala/org/apache/spark/sql/columnar/ColumnAccessor.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,10 +51,12 @@ private[sql] abstract class BasicColumnAccessor[T <: DataType, JvmType](
5151
def hasNext = buffer.hasRemaining
5252

5353
def extractTo(row: MutableRow, ordinal: Int) {
54-
columnType.setField(row, ordinal, extractSingle(buffer))
54+
extractSingle(row, ordinal)
5555
}
5656

57-
def extractSingle(buffer: ByteBuffer): JvmType = columnType.extract(buffer)
57+
def extractSingle(row: MutableRow, ordinal: Int) {
58+
columnType.setField(row, ordinal, columnType.extract(buffer))
59+
}
5860

5961
protected def underlyingBuffer = buffer
6062
}

sql/core/src/main/scala/org/apache/spark/sql/columnar/compression/CompressibleColumnAccessor.scala

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@
1717

1818
package org.apache.spark.sql.columnar.compression
1919

20-
import java.nio.ByteBuffer
21-
20+
import org.apache.spark.sql.catalyst.expressions.MutableRow
2221
import org.apache.spark.sql.catalyst.types.NativeType
2322
import org.apache.spark.sql.columnar.{ColumnAccessor, NativeColumnAccessor}
2423

@@ -34,5 +33,7 @@ private[sql] trait CompressibleColumnAccessor[T <: NativeType] extends ColumnAcc
3433

3534
abstract override def hasNext = super.hasNext || decoder.hasNext
3635

37-
override def extractSingle(buffer: ByteBuffer): T#JvmType = decoder.next()
36+
override def extractSingle(row: MutableRow, ordinal: Int) {
37+
columnType.setField(row, ordinal, decoder.next())
38+
}
3839
}

0 commit comments

Comments
 (0)