Hi
Using HCatalogIO as a source - I am trying to read column tables.

Code:

PCollection<HCatRecord> hcatRecords = input
                .apply(HCatalogIO.read()
                        .withConfigProperties(configProperties)
                        .withDatabase("db-name")
                        .withTable("my-table-name"));
...
HCatalogBeamSchema hcatSchema = 
HCatalogBeamSchema.create(ImmutableMap.of("table", "my-table-name"));
Schema schema = hcatSchema.getTableSchema("db-name", "my-table-name").get();
List<Schema.Field> fields = schema.getFields();


I get:

20/04/27 09:12:16 INFO LineBufferedStream: Caused by: 
java.lang.UnsupportedOperationException: The type 'decimal(30,16)' of field 
'amount' is not supported.
20/04/27 09:12:16 INFO LineBufferedStream:      at 
org.apache.beam.sdk.io.hcatalog.SchemaUtils.toBeamField(SchemaUtils.java:60)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
org.apache.beam.sdk.io.hcatalog.SchemaUtils.toBeamSchema(SchemaUtils.java:53)
20/04/27 09:12:16 INFO LineBufferedStream:      at 
org.apache.beam.sdk.io.hcatalog.HCatalogBeamSchema.getTableSchema(HCatalogBeamSchema.java:83)

Thanx in advance,
Noam

Reply via email to