Re: [HACKERS] deleting dependencies

2003-02-20 Thread Tom Lane
Christopher Kings-Lynne [EMAIL PROTECTED] writes:
 I've been looking at the dependency API and I notice that there is a
 function to delete ALL dependencies on an object and a function to add a
 dependency, but there doesn't seem to be any way of deleting a dependency
 between two _particular_ objects.

In the ALTER cases that have been implemented so far, it seemed easiest
to wipe the full set of dependencies and then regenerate them from the
altered object.  I think you will find the same is true of altering
column type.  To take just one example, the column default expression
(if any) almost certainly has to be replaced too, and it may contain
dependencies.

regards, tom lane

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



Re: [HACKERS] deleting dependencies

2003-02-20 Thread Christopher Kings-Lynne
 Christopher Kings-Lynne [EMAIL PROTECTED] writes:
  I've been looking at the dependency API and I notice that there is a
  function to delete ALL dependencies on an object and a function to add a
  dependency, but there doesn't seem to be any way of deleting a
dependency
  between two _particular_ objects.

 In the ALTER cases that have been implemented so far, it seemed easiest
 to wipe the full set of dependencies and then regenerate them from the
 altered object.  I think you will find the same is true of altering
 column type.  To take just one example, the column default expression
 (if any) almost certainly has to be replaced too, and it may contain
 dependencies.

Phase 1 (which I'm currently doing) will do binary-compatible casts only.
After that, I have to start using code from cluster.c to rewrite the table
methinks...and everything gets a *lot* harder...

Chris



---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send unregister YourEmailAddressHere to [EMAIL PROTECTED])