You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Reynold Xin (JIRA)" <ji...@apache.org> on 2015/07/26 09:46:04 UTC

[jira] [Created] (SPARK-9358) Create a UnsafeRowConcat class

Reynold Xin created SPARK-9358:
----------------------------------

             Summary: Create a UnsafeRowConcat class
                 Key: SPARK-9358
                 URL: https://issues.apache.org/jira/browse/SPARK-9358
             Project: Spark
          Issue Type: Sub-task
          Components: SQL
            Reporter: Reynold Xin
            Assignee: Yijie Shen


A class that can be used to concatenate UnsafeRows together.

{code}
class UnsafeRowConcat(leftSchema: StructType, rightSchema: StructType) {
  def concat(left: UnsafeRow, right: UnsafeRow): UnsafeRow = {
    // ...
  }
}
{code}

concat should reuse the same buffer space, to avoid constant allocation.

UnsafeRow has 3 parts: bitset, fixed-length portion, and variable length portion.

We need to concat the bitsets, the fixed-length portions, append the variable length portions,
and then update the fields with variable length portion to change the new offsets.





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org