Decimal128 d = new Decimal128();
int scale = HiveDecimalUtils.getScaleForType(ptinfo);
switch (ptinfo.getPrimitiveCategory()) {
case FLOAT:
float floatVal = ((Float) scalar).floatValue();
d.update(floatVal, (short) scale);
break;
case DOUBLE:
double doubleVal = ((Double) scalar).doubleValue();
d.update(doubleVal, (short) scale);
break;