[
https://issues.apache.org/jira/browse/FLINK-26667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17513103#comment-17513103
]
Huang Xingbo commented on FLINK-26667:
--------------------------------------
Thank you [~zhaojiale]. I have assigned it to you.
> Improve the error message that the declared type of UDF is inconsistent with
> the actual return type
> ---------------------------------------------------------------------------------------------------
>
> Key: FLINK-26667
> URL: https://issues.apache.org/jira/browse/FLINK-26667
> Project: Flink
> Issue Type: Sub-task
> Components: API / Python
> Affects Versions: 1.16.0
> Reporter: Huang Xingbo
> Assignee: zhaojiale
> Priority: Major
>
> Currently, if the declared type of UDF is inconsitent with the acutal return
> type, some type mismatch type from serializers will be thrown, which is very
> hard for users to know the meanings of the error message and solve it.
> {code:java}
> File "apache_beam/runners/worker/operations.py", line 357, in
> apache_beam.runners.worker.operations.Operation.output
> File "apache_beam/runners/worker/operations.py", line 359, in
> apache_beam.runners.worker.operations.Operation.output
> File "apache_beam/runners/worker/operations.py", line 221, in
> apache_beam.runners.worker.operations.SingletonConsumerSet.receive
> File "pyflink/fn_execution/beam/beam_operations_fast.pyx", line 71, in
> pyflink.fn_execution.beam.beam_operations_fast.FunctionOperation.process
> File "pyflink/fn_execution/beam/beam_operations_fast.pyx", line 85, in
> pyflink.fn_execution.beam.beam_operations_fast.FunctionOperation.process
> File "pyflink/fn_execution/coder_impl_fast.pyx", line 83, in
> pyflink.fn_execution.coder_impl_fast.TableFunctionRowCoderImpl.encode_to_stream
> File "pyflink/fn_execution/coder_impl_fast.pyx", line 256, in
> pyflink.fn_execution.coder_impl_fast.FlattenRowCoderImpl._encode_one_row
> File "pyflink/fn_execution/coder_impl_fast.pyx", line 260, in
> pyflink.fn_execution.coder_impl_fast.FlattenRowCoderImpl._encode_one_row_with_row_kind
> File "pyflink/fn_execution/coder_impl_fast.pyx", line 244, in
> pyflink.fn_execution.coder_impl_fast.FlattenRowCoderImpl._encode_one_row_to_buffer
> File "pyflink/fn_execution/coder_impl_fast.pyx", line 550, in
> pyflink.fn_execution.coder_impl_fast.FlattenRowCoderImpl._encode_field_simple
> AttributeError: 'int' object has no attribute 'encode'
> {code}
> We should provide a better way of type detection and inform the user in
> advance that the type return does not match
--
This message was sent by Atlassian Jira
(v8.20.1#820001)