Skip to content

[sqllogictest] Support pg_typeof for Postgres compatibility tests #5147

Description

@melgenek

Is your feature request related to a problem or challenge? Please describe what you are trying to do.

I want to resolve #4335 and would like to write Postgres compatibility tests that show which types both DataFusion and Postgres have.

In sqllogictest tests I could write a query for Datafusion like this one

select arrow_typeof(null and null), arrow_typeof(null or null);

I would like to write the same query for Postgres, so that not only values are checked for compatibility but also types

select pg_typeof(null and null), pg_typeof(null or null);

Currently, this query cannot be executed by the Postgres sqllogictest engine, because it doesn't support REGTYPE.

Describe the solution you'd like

I'd like to update the Postgres sqllogictest engine implementation to handle the Type::REGTYPE.

Describe alternatives you've considered

It is possible to write an sql query that compares types in sql rather than in sqllogictest

select pg_typeof(null and null) = 'bool'::regtype;

I'd say having as many types as possible in the Postgres sqllogictest engine makes it a more flexible tool to write compatibility tests, so adding regtype doesn't hurt.

Additional context
N/A

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions