From: | Craig Ringer <craig(at)2ndquadrant(dot)com> |
---|---|
To: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
Cc: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Andreas Karlsson <andreas(at)proxel(dot)se>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [HACKERS] REINDEX CONCURRENTLY 2.0 |
Date: | 2017-12-21 03:40:55 |
Message-ID: | CAMsr+YGhS541Zx7kmda5SXLS3NLeY71HksZrbRsRbbS3VaXfkQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 21 December 2017 at 11:31, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
wrote:
> On Thu, Dec 21, 2017 at 11:46 AM, Alvaro Herrera
> <alvherre(at)alvh(dot)no-ip(dot)org> wrote:
> > Michael Paquier wrote:
> >> Well, the idea is really to get rid of that as there are already
> >> facilities of this kind for CREATE TABLE LIKE in the parser and ALTER
> >> TABLE when rewriting a relation. It is not really attractive to have a
> >> 3rd method in the backend code to do the same kind of things, for a
> >> method that is even harder to maintain than the other two.
> >
> > I dislike the backend code that uses SPI and manufacturing node to
> > re-creates indexes. IMO we should get rid of it. Let's not call it
> > "facilities", but rather "grotty hacks".
>
> Aha. You are making my day here ;)
>
> > I think before suggesting to add even more code to perpetuate that idea,
> > we should think about going in the other direction. I have not tried to
> > write the code, but it should be possible to have an intermediate
> > function called by ProcessUtility* which transforms the IndexStmt into
> > an internal representation, then calls DefineIndex. This way, all this
> > code that wants to create indexes for backend-internal reasons can
> > create the internal representation directly then call DefineIndex,
> > instead of the horrible hacks they use today creating parse nodes by
> > hand.
>
> Yeah, that would be likely possible. I am not volunteering for that in
> the short term though..
>
It sounds like that'd make some of ALTER TABLE a bit less ... upsetting ...
too.
--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2017-12-21 03:58:26 | Re: Letting plpgsql in on the fun with the new expression eval stuff |
Previous Message | Michael Paquier | 2017-12-21 03:31:54 | Re: [HACKERS] REINDEX CONCURRENTLY 2.0 |