Re: add "WITH OIDS" to CREATE TABLE AS - Mailing list pgsql-patches

From Bruce Momjian
Subject Re: add "WITH OIDS" to CREATE TABLE AS
Date
Msg-id 200401072010.i07KAfd15847@candle.pha.pa.us
Whole thread Raw
In response to Re: add "WITH OIDS" to CREATE TABLE AS  (Neil Conway <neilc@samurai.com>)
List pgsql-patches
Neil Conway wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Couldn't we use SET only when we need to change the existing value?
>
> I'm not sure what you mean. The pg_dump output will look like:
>
> -- at the top of the dump
> SET default_with_oids = false; -- or true, doesn't really matter
>
> -- for a table that doesn't have OIDs
> CREATE TABLE (...);
>
> -- for a table that does have OIDs
> SET default_with_oids = true;
> CREATE TABLE (...);
> SET default_with_oids = false;
>
> The point is that in this example if all the tables in the DB have
> OIDs, you'll emit two SETs for each CREATE TABLE, so what you'd really
> like is to have chosen a different default to begin with.
>
> Anyway, it's just an implementation detail: I'll definitely implement
> it one way or another in time for 7.5 (unless someone else would like
> to do it, in which case I'd gladly step aside).

I assume we would _remember_ the current with_oids value inside pg_dump.

For example, if I create two tables as user 'guest', I see in pg_dump
output:

    SET SESSION AUTHORIZATION 'guest';

    --
    -- Name: g1; Type: TABLE; Schema: public; Owner: guest
    --

    CREATE TABLE g1 (
        x integer
    ) WITH OIDS;


    --
    -- Name: g2; Type: TABLE; Schema: public; Owner: guest
    --

    CREATE TABLE g2 (
        x integer
    ) WITH OIDS;


    SET SESSION AUTHORIZATION 'postgres';

Notice that only one SESSION AUTHORIZATION is used for guest.  Can't we
do the same for WITH/WITHOUT OIDS?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-patches by date:

Previous
From: Neil Conway
Date:
Subject: Re: add "WITH OIDS" to CREATE TABLE AS
Next
From: Bruce Momjian
Date:
Subject: Re: SIGPIPE handling