Why is pg_lsn marking itself a preferred type?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: Why is pg_lsn marking itself a preferred type?
Date: 2014-05-27 19:27:13
Message-ID: 16255.1401218833@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

One of these doesn't belong:

postgres=# select typname, typcategory from pg_type where typispreferred;
typname | typcategory
-------------+-------------
bool | B
text | S
oid | N
float8 | N
inet | I
timestamptz | D
interval | T
varbit | V
pg_lsn | U
(9 rows)

Was there any actual rationale to this, or was it just somebody who did
not understand what that bit is for?

I think it's probably mostly harmless given the lack of casts to or from
pg_lsn, but it's still a darn bad idea to have any preferred types in the
'U' category. If we leave it like this it will bite us in the rear
eventually.

The most expedient response at this late date seems to be to change the
entry in pg_type.h without bumping catversion. That way at least it
will be right in databases initdb'd after beta2.

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2014-05-27 19:32:54 Re: PG Manual: Clarifying the repeatable read isolation example
Previous Message Heikki Linnakangas 2014-05-27 19:19:26 Re: Race condition within _bt_findinsertloc()? (new page split code)