BUG #17515: Change in behaviour of a composite type within a domain

Started by PG Bug reporting formalmost 4 years ago2 messagesbugs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following bug has been logged on the website:

Bug reference: 17515
Logged by: Dan Kubb
Email address: dan.kubb@gmail.com
PostgreSQL version: 14.3
Operating system: All
Description:

I noticed a regression in 13.7 and 14.3 in the behaviour of composite types
within a domain. Here is a simplified reproduction:

BEGIN;

-- Create composite type
CREATE TYPE my_composite_type AS (
col1 boolean,
col2 boolean
);

-- Create domain wrapping the composite type
CREATE DOMAIN my_domain AS my_composite_type NOT NULL;

-- Create function to test composite type
CREATE FUNCTION test_my_composite_type()
RETURNS my_composite_type
LANGUAGE sql
AS $$
SELECT (true, true)
$$;

-- Create function to test domain
CREATE FUNCTION test_my_domain()
RETURNS my_domain
LANGUAGE sql
AS $$
SELECT (true, true)
$$;

-- Works on 13.6/14.2 and 13.7/14.3
SELECT test_my_composite_type FROM test_my_composite_type();

-- Works on 13.6/14.2, but pg 13.7/14.3 this returns the error:
-- ERROR: type my_domain is not composite
SELECT test_my_domain FROM test_my_domain();

ROLLBACK;

--

Dan Kubb

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: PG Bug reporting form (#1)
Re: BUG #17515: Change in behaviour of a composite type within a domain

PG Bug reporting form <noreply@postgresql.org> writes:

I noticed a regression in 13.7 and 14.3 in the behaviour of composite types
within a domain. Here is a simplified reproduction:

Argh, looks like I broke this in ec62cb0aa. Will fix, thanks for
the report!

regards, tom lane