Re: BETWEEN Node & DROP COLUMN - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: BETWEEN Node & DROP COLUMN
Date
Msg-id 200207040520.g645KtS29611@candle.pha.pa.us
Whole thread Raw
In response to Re: BETWEEN Node & DROP COLUMN  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
Responses Re: BETWEEN Node & DROP COLUMN  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
List pgsql-hackers
Christopher Kings-Lynne wrote:
> > Unfortunately many apps rely on the fact that the attnos are
> > consecutive starting from 1. It was the main reason why Tom
> > rejected my trial. Nothing has changed about it.
> 
> OK, I've been looking at Hiroshi's implementation.  It's basically
> semantically equivalent to mine from what I can see so far.  The only
> difference really is in how the dropped columns are marked.
> 
> I've been ruminating on Hiroshi's statement at the top there.  What was the
> reasoning for assuming that 'many apps rely on the fact that the attnos are
> consecutive'?  Is that true?  phpPgAdmin doesn't.  In fact, phpPgAdmin won't
> require any changes with Hiroshi's implementaiton and will require changes
> with mine.
> 
> Anyway, an app that relies on consecutive attnos is going to have pain
> skipping over attisdropped columns anyway???
> 
> In fact, I'm now beginning to think that I should just resurrect Hiroshi's
> implementation.  I'm prepared to do that if people like...

Well, you have clearly identified that Hiroshi's approach is cleaner for
clients, because most clients don't need any changes.  If the server end
looks equivalent for both approaches, I suggest you get started with
Hiroshi's idea.

When Hiroshi's idea was originally proposed, some didn't like the
uncleanliness of it, and particularly relations that relied on attno
would all have to be adjusted/removed.  We didn't have pg_depend, of
course, so there was this kind of gap in knowing how to remove all
references to the dropped column.

There was also this idea that somehow the fairy software goddess was
going to come down some day and give us a cleaner way to implement DROP
COLUMN.  She still hasn't shown up.  :-)

I just read over TODO.detail/drop and my memory was correct.  It was a
mixure of having no pg_depend coupled with other ideas.  Now that
pg_depend is coming, DROP COLUMN is ripe for a solution.

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026
 




pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: BETWEEN Node & DROP COLUMN
Next
From: Bruce Momjian
Date:
Subject: Re: BETWEEN Node & DROP COLUMN