Package org.apache.hadoop.hive.common.type

Examples of org.apache.hadoop.hive.common.type.Decimal128.update()


    assertTrue(r.vector[0].equals(new Decimal128("1.15", (short) 2)));
    assertTrue(r.vector[1].equals(new Decimal128("-2.95", (short) 2)));
    assertTrue(r.vector[2].equals(new Decimal128("3.50", (short) 2)));

    // try a zero-divide to show a repeating NULL is produced
    d.update("0", (short) 2);
    expr.evaluate(b);
    assertFalse(r.noNulls);
    assertTrue(r.isNull[0]);
    assertTrue(r.isRepeating);
  }
View Full Code Here


   */
  @Test
  public void testFilterDecimalColEqualDecimalScalar() {
    VectorizedRowBatch b = getVectorizedRowBatch1DecimalCol();
    Decimal128 scalar = new Decimal128();
    scalar.update("-3.30", (short) 2);
    VectorExpression expr = new FilterDecimalColEqualDecimalScalar(0, scalar);
    expr.evaluate(b);

    // check that right row(s) are selected
    assertTrue(b.selectedInUse);
View Full Code Here

   */
  @Test
  public void testFilterDecimalScalarEqualDecimalColumn() {
    VectorizedRowBatch b = getVectorizedRowBatch1DecimalCol();
    Decimal128 scalar = new Decimal128();
    scalar.update("-3.30", (short) 2);
    VectorExpression expr = new FilterDecimalScalarEqualDecimalColumn(scalar, 0);
    expr.evaluate(b);

    // check that right row(s) are selected
    assertTrue(b.selectedInUse);
View Full Code Here

   */
  @Test
  public void testFilterDecimalColLessScalar() {
    VectorizedRowBatch b = getVectorizedRowBatch1DecimalCol();
    Decimal128 scalar = new Decimal128();
    scalar.update("0", (short) 2);
    VectorExpression expr = new FilterDecimalColLessDecimalScalar(0, scalar);
    expr.evaluate(b);

    // check that right row(s) are selected
    assertTrue(b.selectedInUse);
View Full Code Here

   */
  @Test
  public void testFilterDecimalScalarGreaterThanColumn() {
    VectorizedRowBatch b = getVectorizedRowBatch1DecimalCol();
    Decimal128 scalar = new Decimal128();
    scalar.update("0", (short) 2);
    VectorExpression expr = new FilterDecimalScalarGreaterDecimalColumn(scalar, 0);
    expr.evaluate(b);

    // check that right row(s) are selected
    assertTrue(b.selectedInUse);
View Full Code Here

  }

  public static void floor(int i, Decimal128 input, DecimalColumnVector outputColVector) {
    try {
      Decimal128 result = outputColVector.vector[i];
      result.update(input);
      result.zeroFractionPart(scratchUInt128);
      result.changeScaleDestructive(outputColVector.scale);
      if ((result.compareTo(input) != 0) && input.getSignum() < 0) {
        result.subtractDestructive(DECIMAL_ONE, outputColVector.scale);
      }
View Full Code Here

  }

  public static void ceiling(int i, Decimal128 input, DecimalColumnVector outputColVector) {
    try {
      Decimal128 result = outputColVector.vector[i];
      result.update(input);
      result.zeroFractionPart(scratchUInt128);
      result.changeScaleDestructive(outputColVector.scale);
      if ((result.compareTo(input) != 0) && input.getSignum() > 0) {
        result.addDestructive(DECIMAL_ONE, outputColVector.scale);
      }
View Full Code Here

  }

  public static void abs(int i, Decimal128 input, DecimalColumnVector outputColVector) {
    Decimal128 result = outputColVector.vector[i];
    try {
      result.update(input);
      result.absDestructive();
      result.changeScaleDestructive(outputColVector.scale);
    } catch (ArithmeticException e) {
      outputColVector.noNulls = false;
      outputColVector.isNull[i] = true;
View Full Code Here

  }

  public static void negate(int i, Decimal128 input, DecimalColumnVector outputColVector) {
    Decimal128 result = outputColVector.vector[i];
    try {
      result.update(input);
      result.negateDestructive();
      result.changeScaleDestructive(outputColVector.scale);
    } catch (ArithmeticException e) {
      outputColVector.noNulls = false;
      outputColVector.isNull[i] = true;
View Full Code Here

    private void doTestFastStreamForHiveDecimal(String valueString) {
      Decimal128FastBuffer scratch = new Decimal128FastBuffer();
      BigDecimal value = new BigDecimal(valueString);
      Decimal128 dec = new Decimal128();
      dec.update(value);

      HiveDecimalWritable witness = new HiveDecimalWritable();
      witness.set(HiveDecimal.create(value));

      int bufferUsed = dec.fastSerializeForHiveDecimal(scratch);
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.