Re: Re-create dependent views on ALTER TABLE ALTER COLUMN ... TYPE?

From: ash <ash(at)commandprompt(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Stephen Frost <sfrost(at)snowman(dot)net>, "pgsql-hackers\(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Re-create dependent views on ALTER TABLE ALTER COLUMN ... TYPE?
Date: 2014-06-02 12:52:06
Message-ID: 8761kjh3t5.fsf@commandprompt.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Robert Haas <robertmhaas(at)gmail(dot)com> writes:

> On Wed, May 28, 2014 at 8:22 AM, ash <ash(at)commandprompt(dot)com> wrote:
>>> None of that involves answering hypothetical questions; but what you
>>> want to do does, and that I think is the problem in a nutshell.
>>
>> In a nutshell I'd like PostgreSQL to just re-parse the *current* view
>> definition. Should that throw an error, user intervention will be
>> required anyway, but most of the time it should just work.
>
> What exactly do you mean by "re-parse the current view definition"?

I mean do what the user will have to do in this situation anyway:

BEGIN;
DROP VIEW ...;
ALTER TABLE ...;
CREATE VIEW ...;
COMMIT;

Should this fail, the user will have to work around it, but most of the
time it could just work.

> The only form of the view definition we actually have is already
> parsed into an internal form (see pg_rewrite) which, for the reasons
> I've attempted to explain, is not easy to adapt to new column types.
> I suppose we could deparse that definition and then reparse the
> results, but that could lead to some very surprising consequences
> (some of which are security-relevant).

Like?

--
Alex

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2014-06-02 12:55:35 Re: WAL replay bugs
Previous Message Fujii Masao 2014-06-02 12:44:27 Re: Compression of full-page-writes