[ https://issues.apache.org/jira/browse/BEAM-10782?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Saavan Nanavati updated BEAM-10782: ----------------------------------- Description: Currently, when using the performance runtime type check feature, you can yield invalid iterables from a DoFn and not have an error thrown. This is incorrect behavior. We should throw a TypeCheckError if the iterable type is any of the following: dict, str, unicode, or bytes. Previously, we tried accomplishing this using an isinstance check in process_outputs of common.py, however this harms performance significantly. We should search for a cheaper way to verify that the output type is valid. One possible solution is to only do the isinstance check _if_ the flag is on. was: Currently, when using the performance runtime type check feature, you can yield invalid iterables from a DoFn and not have an error thrown. This is incorrect behavior. We should throw a TypeCheckError if the iterable type is any of the following: dict, str, unicode, or bytes. Previously, we tried accomplishing this using an isinstance check in process_outputs of common.py, however this harms performance significantly. We should search for a cheaper way to verify that the output type is valid. > Check that outputs are valid iterables when using the performance runtime > type check feature > -------------------------------------------------------------------------------------------- > > Key: BEAM-10782 > URL: https://issues.apache.org/jira/browse/BEAM-10782 > Project: Beam > Issue Type: Improvement > Components: sdk-py-core > Reporter: Saavan Nanavati > Priority: P2 > > Currently, when using the performance runtime type check feature, you can > yield invalid iterables from a DoFn and not have an error thrown. This is > incorrect behavior. > > We should throw a TypeCheckError if the iterable type is any of the > following: dict, str, unicode, or bytes. > > Previously, we tried accomplishing this using an isinstance check in > process_outputs of common.py, however this harms performance significantly. > We should search for a cheaper way to verify that the output type is valid. > One possible solution is to only do the isinstance check _if_ the flag is on. > > -- This message was sent by Atlassian Jira (v8.3.4#803005)