Completed pg_depend support

From: Rod Taylor <rbt(at)zort(dot)ca>
To: pgsql-patches(at)postgresql(dot)org
Subject: Completed pg_depend support
Date: 2002-04-07 01:58:07
Message-ID: 1018144688.59385.20.camel@knight.zort.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Tracks most inter system table dependencies.

With a small amount of work, allows dropping sequences with the table in
the event of a serial type. Restricting (cascading) through foreign
keys, and functional RESTRICT / CASCADE behaviour to most items.

Doesn't allow DROP USER CASCADE, nor does it track comments. A few
tables like opclass, and am/amop are not tracked either simply because I
really don't know what they do and how the user can affect them.

Rather large regression tests will be started with RESTRICT / CASCADE
behaviours after this portion is committed. Tired of getting a large
number of conflicts every couple days with Toms namespace work.

New tricks? Check out heap_drop_with_catalog. You'll notice the
relation type, indicies, view rules are handled by dependDelete().

Also, try to drop type int4 ;) Restricts by default (fresh initdb).

template1=# drop type int4;
ERROR: Drop Restricted as Table pg_inherits Depends on Type int4

TODO.depend is the list of actions I needed to do (or did). More or
gives a list of affected areas.

Dependencies still to do are in precompiled copies of functions,
defaults, and rule contents. I have no clues how to do those items.

Attachment Content-Type Size
depend.patch text/plain 92.4 KB
pg_depend.c text/x-c 14.7 KB
pg_depend.h text/x-c-header 3.2 KB
TODO.depend text/plain 2.8 KB

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Christopher Kings-Lynne 2002-04-07 02:59:25 Re: Completed pg_depend support
Previous Message Bruce Momjian 2002-04-06 22:00:40 Re: 7.2 fe-exec.c patch to PQescapeString()