Mihai Budiu created CALCITE-6813: ------------------------------------ Summary: UNNEST infers incorrect nullability for the result when applied to an array that contains nullable ROW values Key: CALCITE-6813 URL: https://issues.apache.org/jira/browse/CALCITE-6813 Project: Calcite Issue Type: Bug Components: core Affects Versions: 1.38.0 Reporter: Mihai Budiu
An array can have nullable elements, which can be ROW values. Consider this example, validated in Postgres: {code:sql} CREATE TYPE person AS ( id INTEGER, name TEXT ); CREATE TABLE example_table ( id SERIAL PRIMARY KEY, data person[] ); SELECT (element).id AS name FROM example_table, UNNEST(data) AS element; {code} If an element in the array is null, then the corresponding element.id is also null. However, Calcite infers a type of RecordType(BIGINT id) for the rows of this query, which is non-nullable. -- This message was sent by Atlassian Jira (v8.20.10#820010)