Wouter Zorgdrager created FLINK-35112: -----------------------------------------
Summary: Membership for Row class does not include field names Key: FLINK-35112 URL: https://issues.apache.org/jira/browse/FLINK-35112 Project: Flink Issue Type: Bug Components: API / Python Affects Versions: 1.18.1 Reporter: Wouter Zorgdrager In the Row class in PyFlink I cannot do a membership check for field names. This minimal example will show the unexpected behavior: ``` from pyflink.common import Row row = Row(name="Alice", age=11) # Expected to be True, but is False print("name" in row) person = Row("name", "age") # This is True, as expected print('name' in person) ``` The related code in the Row class is: ``` def __contains__(self, item): return item in self._values ``` It should be relatively easy to fix with the following code: ``` def __contains__(self, item): if hasattr(self, "_fields"): return item in self._fields else: return item in self._values ``` -- This message was sent by Atlassian Jira (v8.20.10#820010)