kanterov commented on issue #11034: [BEAM-9424] Allow grouping by LogicalType
URL: https://github.com/apache/beam/pull/11034#issuecomment-594648165
 
 
   @reuvenlax I cleaned the code and left only test that reproduces this issue.
   
   The reason for that is because it uses `RowCoderGenerator` that would use a 
`Coder<BaseT>` instead of `Coder<InputT>` (see `RowCoderGenerator.java:374`). 
While it doesn't make any difference for binary representation, SDK code fails 
because of that. In the stack trace we can see how Combine should get 
`InputT=EnumerationType$Value`, but it gets `BaseT=Integer`.
   
   ```
   Caused by: java.lang.ClassCastException: java.lang.Integer cannot be cast to 
org.apache.beam.sdk.schemas.logicaltypes.EnumerationType$Value
        at 
org.apache.beam.sdk.schemas.logicaltypes.EnumerationType.toBaseType(EnumerationType.java:37)
        at 
org.apache.beam.sdk.values.Row$Builder.verifyLogicalType(Row.java:659)
        at org.apache.beam.sdk.values.Row$Builder.verify(Row.java:652)
        at org.apache.beam.sdk.values.Row$Builder.verify(Row.java:635)
        at org.apache.beam.sdk.values.Row$Builder.build(Row.java:840)
        at 
org.apache.beam.sdk.schemas.utils.SelectHelpers.selectRow(SelectHelpers.java:194)
        at 
org.apache.beam.sdk.schemas.transforms.SchemaAggregateFn$Inner$ExtractSingleFieldFunction.apply(SchemaAggregateFn.java:241)
        at 
org.apache.beam.sdk.schemas.transforms.SchemaAggregateFn$Inner$ExtractSingleFieldFunction.apply(SchemaAggregateFn.java:231)
        at 
org.apache.beam.sdk.transforms.CombineFns$ComposedCombineFn.addInput(CombineFns.java:377)
        at 
org.apache.beam.sdk.schemas.transforms.SchemaAggregateFn$Inner.addInput(SchemaAggregateFn.java:283)
        at 
org.apache.beam.sdk.schemas.transforms.SchemaAggregateFn$Inner.addInput(SchemaAggregateFn.java:55)
        at 
org.apache.beam.sdk.transforms.Combine$CombineFn.apply(Combine.java:446)
        at 
org.apache.beam.sdk.transforms.Combine$GroupedValues$1.processElement(Combine.java:2171)
   ```
   
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to