You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Reading a Parquet file with complex types with decimals inside with hive.parquet-batch-read-optimization-enabled is true results in error.
It works when hive.parquet-batch-read-optimization-enabled is false.
Parquet definition of the complex type with decimals inside:
java.lang.UnsupportedOperationException: com.facebook.presto.common.block.IntArrayBlock at com.facebook.presto.common.block.Block.getLong(Block.java:81) at com.facebook.presto.common.type.ShortDecimalType.getObjectValue(ShortDecimalType.java:77) at com.facebook.presto.common.type.ArrayType.arrayBlockToObjectValues(ArrayType.java:160) at com.facebook.presto.common.type.ArrayType.lambda$getObjectValue$0(ArrayType.java:147) at com.facebook.presto.common.block.AbstractArrayBlock.apply(AbstractArrayBlock.java:298) at com.facebook.presto.common.type.ArrayType.getObjectValue(ArrayType.java:147) at com.facebook.presto.server.protocol.RowIterable$RowIterator.computeNext(RowIterable.java:77) at com.facebook.presto.server.protocol.RowIterable$RowIterator.computeNext(RowIterable.java:50) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:145)
Expected Behavior
Vectorized reading should work.
Current Behavior
The following error is obtained:
[Error: java.lang.UnsupportedOperationException: com.facebook.presto.common.block.IntArrayBlock
at com.facebook.presto.common.block.Block.getLong(Block.java:81)
at com.facebook.presto.common.type.ShortDecimalType.getObjectValue(ShortDecimalType.java:77)...]
Reading a Parquet file with complex types with decimals inside with
hive.parquet-batch-read-optimization-enabled
istrue
results in error.It works when
hive.parquet-batch-read-optimization-enabled
isfalse
.Parquet definition of the complex type with decimals inside:
Your Environment
java.lang.UnsupportedOperationException: com.facebook.presto.common.block.IntArrayBlock at com.facebook.presto.common.block.Block.getLong(Block.java:81) at com.facebook.presto.common.type.ShortDecimalType.getObjectValue(ShortDecimalType.java:77) at com.facebook.presto.common.type.ArrayType.arrayBlockToObjectValues(ArrayType.java:160) at com.facebook.presto.common.type.ArrayType.lambda$getObjectValue$0(ArrayType.java:147) at com.facebook.presto.common.block.AbstractArrayBlock.apply(AbstractArrayBlock.java:298) at com.facebook.presto.common.type.ArrayType.getObjectValue(ArrayType.java:147) at com.facebook.presto.server.protocol.RowIterable$RowIterator.computeNext(RowIterable.java:77) at com.facebook.presto.server.protocol.RowIterable$RowIterator.computeNext(RowIterable.java:50) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:145)
Expected Behavior
Vectorized reading should work.
Current Behavior
The following error is obtained:
Steps to Reproduce
CREATE TABLE "hive"."default".hive_data_reader_array_primitives (
as_array_int array(integer),
as_array_long array(bigint),
as_array_byte array(tinyint),
as_array_short array(smallint),
as_array_boolean array(boolean),
as_array_float array(real),
as_array_double array(double),
as_array_string array(varchar),
as_array_binary array(varbinary),
as_array_big_decimal array(decimal(1,0))
) WITH (FORMAT = 'PARQUET', external_location = 's3a://path/to/parquet/')
Parquet file: https://github.com/prestodb/presto/blob/master/presto-delta/src/test/resources/delta_v3/data-reader-array-primitives/part-00000-13921577-6635-457e-9e3a-f32dc7fea982.c000.snappy.parquet
Hive catalog properties with
hive.parquet-batch-read-optimization-enabled=true
The text was updated successfully, but these errors were encountered: