Re: Modifying pg_shadow? - Mailing list pgsql-novice

From Tom Lane
Subject Re: Modifying pg_shadow?
Date
Msg-id 1521.1063054074@sss.pgh.pa.us
Whole thread Raw
In response to Modifying pg_shadow?  (Jason Hihn <jhihn@paytimepayroll.com>)
Responses Re: Modifying pg_shadow?
List pgsql-novice
Jason Hihn <jhihn@paytimepayroll.com> writes:
> I wish to track some additional info about users. Can I just add columns to
> the pg_shadow table?

Not without modifying the C code that manipulates pg_shadow (at the very
least, some routines in src/backend/commands/user.c would have to
change, and you'd need to update src/include/catalog/pg_shadow.h).

> Can I add a system table while I am at it? (how?)

What's your idea of a "system table"?  Mine is one that some C code in
the backend knows about explicitly.  Unless you've written some C code
that accesses a table, it's not a system table.  The infrastructure for
doing this is at least a header in include/catalog/, usually more
depending on whether you need things like cache support for the new
table.  You might care to look at all the code referencing one of the
lesser-used catalogs, perhaps pg_language or pg_cast, to get a sense of
what is involved.

> How do I back up the pg_ system tables?

They aren't backed up as such; all the useful content is included in the
schema information output by pg_dump or pg_dumpall.

            regards, tom lane

pgsql-novice by date:

Previous
From: Jason Hihn
Date:
Subject: Modifying pg_shadow?
Next
From: Andreas Fromm
Date:
Subject: Re: How to insert non-english characters to the db?