Re: Domains vs data types - Mailing list pgsql-general

From Adrian Klaver
Subject Re: Domains vs data types
Date
Msg-id 7cdd7a73-5a61-451b-9556-5cb523cfb239@aklaver.com
Whole thread Raw
In response to Domains vs data types  (Ertan Küçükoglu <ertan.kucukoglu@gmail.com>)
Responses Re: Domains vs data types
List pgsql-general
On 8/19/25 21:47, Ertan Küçükoglu wrote:
> Hello,
> 
> I am using PostgreSQL 17.6.
> I would like to learn if there is any benefit of using domains over data 
> types for table column definitions in terms of performance gain/loss.
> 
> For example I might have table defined as below
> create table test (
>    a integer,
>    b integer,
>    c integer,
>    d varchar(5)
> );
> 
> I might also have ame table defined as below
> 
> create domain aint integer;
> create domain s5 varchar(5);
> 
> create table test_domain (
>    a aint,
>    b aint,
>    c aint,
>    d s5
> );
> 
> Does the second table have any technical advantage/disadvantage over 
> plain data type definition?
> Less metadata in memory? High metadata in memory? Less/increased disk space?

See:

https://www.postgresql.org/docs/current/catalog-pg-type.html

for what is stored in system catalog for a domain vs a base type.

Personally I don't see that integer --> aint really helps.
Also I am pretty sure varchar(5) --> s5 is still going to result in a 
length check.

> 
> Thanks & Regards,
> Ertan


-- 
Adrian Klaver
adrian.klaver@aklaver.com



pgsql-general by date:

Previous
From: Scot Kreienkamp
Date:
Subject: RE: Streaming replica hangs periodically for ~ 1 second - how to diagnose/debug
Next
From: Adrian Klaver
Date:
Subject: Re: Streaming replica hangs periodically for ~ 1 second - how to diagnose/debug