Re: How to add a new pg oid? - Mailing list pgsql-hackers

From jacktby jacktby
Subject Re: How to add a new pg oid?
Date
Msg-id 5BB22433-A7B2-4B50-9560-D203F330963E@gmail.com
Whole thread Raw
In response to Re: How to add a new pg oid?  (jacktby jacktby <jacktby@gmail.com>)
List pgsql-hackers


2023年9月6日 18:50,jacktby jacktby <jacktby@gmail.com> 写道:



2023年9月6日 18:19,jacktby jacktby <jacktby@gmail.com> 写道:



2023年9月6日 01:47,David G. Johnston <david.g.johnston@gmail.com> 写道:

OIDs don't exist independently of the data they are associated with.  Give more context if you want a better answer.  Or just go look at the source code commits for when the last time something needing an OID got added to the core catalog.

David J.
 
{ oid => '111', array_type_oid => '6099', descr => 'similarity columns',
  typname => 'similarity_columns', typlen => '-1', typlen => '-1', typbyval => 'f', typcategory => 'U',
  typinput => 'byteain', typoutput => 'byteaout', typreceive => 'bytearecv',
  typsend => 'byteasend', typalign => 'i', typstorage => 'x' },

I add above into pg_type.dat. And then I add execute “make install” and restart pg. And Then do below:
postgres=# SELECT typname from pg_type where typname like '%similarity%';
 typname 
---------
(0 rows)

I can’t get the type I added. What else I need to do?
I add below in bootstrap.c:
static const struct typinfo TypInfo[] = {
{"similarity_columns", SimilarityColumns, 0, -1, false, TYPALIGN_INT, TYPSTORAGE_EXTENDED, InvalidOid,
F_BYTEAIN, F_BYTEAOUT},
….
}
And then “make install” and restart pg.but still:
postgres=# SELECT typname from pg_type where typname like '%similarity%';
 typname 
---------
(0 rows)

Please give me help.
After initdb , I get it. Thanks

pgsql-hackers by date:

Previous
From: "Andrey M. Borodin"
Date:
Subject: Re: Transaction timeout
Next
From: Andy Fan
Date:
Subject: make add_paths_to_append_rel aware of startup cost