Example usage for org.apache.spark.sql.catalyst.expressions.codegen BufferHolder grow

List of usage examples for org.apache.spark.sql.catalyst.expressions.codegen BufferHolder grow

Introduction

In this page you can find the example usage for org.apache.spark.sql.catalyst.expressions.codegen BufferHolder grow.

Prototype

void grow(int neededSize) 

Source Link

Document

Grows the buffer by at least neededSize and points the row to the buffer.

Usage

From source file:com.splicemachine.db.iapi.types.SQLTime.java

License:Apache License

/**
 *
 * Write to a Project Tungsten Format (UnsafeRow).  We encode Time as
 * 2 ints./*from  www  .  j av  a  2 s  .co m*/
 *
 * @param unsafeRowWriter
 * @param ordinal
  */
@Override
public void write(UnsafeRowWriter unsafeRowWriter, int ordinal) {
    if (isNull())
        unsafeRowWriter.setNullAt(ordinal);
    else {
        BufferHolder holder = unsafeRowWriter.holder();
        holder.grow(8);
        Platform.putInt(holder.buffer, holder.cursor, encodedTime);
        Platform.putInt(holder.buffer, holder.cursor + 4, encodedTimeFraction);
        unsafeRowWriter.setOffsetAndSize(ordinal, 8);
        holder.cursor = 8;
    }
}

From source file:com.splicemachine.db.iapi.types.SQLTimestamp.java

License:Apache License

/**
 *
 * Write to Project Tungsten format (UnsafeRow).  Timestamp is
 * written as 3 ints./*from w ww  .  j  ava  2  s  .c  om*/
 *
 *
 * @param unsafeRowWriter
 * @param ordinal
  */
@Override
public void write(UnsafeRowWriter unsafeRowWriter, int ordinal) {
    if (isNull())
        unsafeRowWriter.setNullAt(ordinal);
    else {
        BufferHolder holder = unsafeRowWriter.holder();
        holder.grow(12);
        Platform.putInt(holder.buffer, holder.cursor, encodedDate);
        Platform.putInt(holder.buffer, holder.cursor + 4, encodedTime);
        Platform.putInt(holder.buffer, holder.cursor + 8, nanos);
        unsafeRowWriter.setOffsetAndSize(ordinal, 12);
        holder.cursor = 12;
    }
}