Examples of DecimalColumnVector


Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    Decimal128 d = new Decimal128(1);
    VectorExpression expr = new DecimalScalarAddDecimalColumn(d, 0, 2);

    // test without nulls
    expr.evaluate(b);
    DecimalColumnVector r = (DecimalColumnVector) b.cols[2];
    assertTrue(r.vector[0].equals(new Decimal128("2.20", (short) 2)));
    assertTrue(r.vector[1].equals(new Decimal128("-2.30", (short) 2)));
    assertTrue(r.vector[2].equals(new Decimal128("1.00", (short) 2)));

    // test null propagation
    b = getVectorizedRowBatch3DecimalCols();
    DecimalColumnVector in = (DecimalColumnVector) b.cols[0];
    r = (DecimalColumnVector) b.cols[2];
    in.noNulls = false;
    in.isNull[0] = true;
    expr.evaluate(b);
    assertTrue(!r.noNulls);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    Decimal128 d = new Decimal128(1);
    VectorExpression expr = new DecimalScalarSubtractDecimalColumn(d, 0, 2);

    // test without nulls
    expr.evaluate(b);
    DecimalColumnVector r = (DecimalColumnVector) b.cols[2];
    assertTrue(r.vector[0].equals(new Decimal128("-0.20", (short) 2)));
    assertTrue(r.vector[1].equals(new Decimal128("4.30", (short) 2)));
    assertTrue(r.vector[2].equals(new Decimal128("1.00", (short) 2)));

    // test that overflow produces null
    b = getVectorizedRowBatch3DecimalCols();
    DecimalColumnVector in = (DecimalColumnVector) b.cols[0];
    in.vector[0].update("-9999999999999999.99", (short) 2); // set to min possible value
    expr.evaluate(b);
    r = (DecimalColumnVector) b.cols[2];
    assertFalse(r.noNulls);
    assertTrue(r.isNull[0]);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    Decimal128 d = new Decimal128(2);
    VectorExpression expr = new DecimalScalarMultiplyDecimalColumn(d, 0, 2);

    // test without nulls
    expr.evaluate(b);
    DecimalColumnVector r = (DecimalColumnVector) b.cols[2];
    assertTrue(r.vector[0].equals(new Decimal128("2.40", (short) 2)));
    assertTrue(r.vector[1].equals(new Decimal128("-6.60", (short) 2)));
    assertTrue(r.vector[2].equals(new Decimal128("0", (short) 2)));

    // test that overflow produces null
    b = getVectorizedRowBatch3DecimalCols();
    DecimalColumnVector in = (DecimalColumnVector) b.cols[0];
    in.vector[0].update("9999999999999999.99", (short) 2); // set to max possible value
    expr.evaluate(b);
    r = (DecimalColumnVector) b.cols[2];
    assertFalse(r.noNulls);
    assertTrue(r.isNull[0]);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

  }

  // Make a decimal batch with three columns, including two for inputs and one for the result.
  private VectorizedRowBatch getVectorizedRowBatch3DecimalCols() {
    VectorizedRowBatch b = new VectorizedRowBatch(3);
    DecimalColumnVector v0, v1;
    b.cols[0] = v0 = new DecimalColumnVector(18, 2);
    b.cols[1] = v1 = new DecimalColumnVector(18, 2);
    b.cols[2] = new DecimalColumnVector(18, 2);
    v0.vector[0].update("1.20", (short) 2);
    v0.vector[1].update("-3.30", (short) 2);
    v0.vector[2].update("0", (short) 2);

    v1.vector[0].update("1.00", (short) 2);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

              if (typeScale != null) {
                scale = Integer.parseInt(typeScale);
              }
            }

            batch.cols[i] = new DecimalColumnVector(batchSize, precission, scale);
            columnAssign[i] = new ColumnVectorAssign() {
                @Override
                public void assign(
                        ColumnVector columnVector,
                        int row,
                        Object value) {
                    DecimalColumnVector dcv = (DecimalColumnVector) columnVector;
                    dcv.vector[row] = (Decimal128)value;
                }
            };
      } else {
        throw new HiveException("Unimplemented type " + types[i]);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    VectorizedRowBatch vrg = VectorizedRowGroupGenUtil.getVectorizedRowBatch(size, 4, 0);

    LongColumnVector lcv = (LongColumnVector) vrg.cols[0];
    DoubleColumnVector dcv = new DoubleColumnVector(size);
    BytesColumnVector bcv = new BytesColumnVector(size);
    DecimalColumnVector dv = new DecimalColumnVector(5, 1);
    vrg.cols[1] = dcv;
    vrg.cols[2] = bcv;
    vrg.cols[3] = dv;

    longCve.evaluate(vrg);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

   * for cast of decimal to long due to inheritance.
   */
  public void testCastDecimalToBoolean() {
    VectorizedRowBatch b = getBatchDecimalLong();
    VectorExpression expr = new CastDecimalToBoolean(0, 1);
    DecimalColumnVector in = (DecimalColumnVector) b.cols[0];
    in.vector[1].update(0);
    expr.evaluate(b);
    LongColumnVector r = (LongColumnVector) b.cols[1];
    assertEquals(1, r.vector[0]);
    assertEquals(0, r.vector[1]);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    assertEquals(1, r.vector[2]);
  }

  private VectorizedRowBatch getBatchDecimalLong() {
    VectorizedRowBatch b = new VectorizedRowBatch(2);
    DecimalColumnVector dv;
    short scale = 2;
    b.cols[0] = dv = new DecimalColumnVector(18, scale);
    b.cols[1] = new LongColumnVector();

    b.size = 3;

    dv.vector[0].update("1.1", scale);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

    assertTrue(r.isNull[0]);
  }

  private VectorizedRowBatch getBatchDecimalDouble() {
    VectorizedRowBatch b = new VectorizedRowBatch(2);
    DecimalColumnVector dv;
    short scale = 2;
    b.cols[0] = dv = new DecimalColumnVector(18, scale);
    b.cols[1] = new DoubleColumnVector();

    b.size = 3;

    dv.vector[0].update("1.1", scale);
View Full Code Here

Examples of org.apache.hadoop.hive.ql.exec.vector.DecimalColumnVector

            r.vector[2], r.start[2], r.length[2]));
  }

  private VectorizedRowBatch getBatchDecimalString() {
    VectorizedRowBatch b = new VectorizedRowBatch(2);
    DecimalColumnVector dv;
    short scale = 2;
    b.cols[0] = dv = new DecimalColumnVector(18, scale);
    b.cols[1] = new BytesColumnVector();

    b.size = 3;

    dv.vector[0].update("1.1", scale);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.