Re: WIP list rewrite - Mailing list pgsql-patches

From Tom Lane
Subject Re: WIP list rewrite
Date
Msg-id 961.1085367892@sss.pgh.pa.us
Whole thread Raw
In response to WIP list rewrite  (Neil Conway <neilc@samurai.com>)
Responses Re: WIP list rewrite  (Neil Conway <neilc@samurai.com>)
List pgsql-patches
Neil Conway <neilc@samurai.com> writes:
> I've attached the latest list rewrite patch (gzip'ed, against current
> sources). Unfortunately, the compatibility API we defined earlier wasn't
> that effective: it was more efficient for me to look at more or less
> every lfirst() call site in the backend and rewrite it as necessary than
> to just start up the backend and wait for things to break.

I'm surprised you did that much work and did not fix things to
distinguish ListCell * from List * ... we're gonna have to make
another pass over all these places to do that.

I wonder whether it wasn't a bad idea to define the compatibility API
to try to gloss over the type difference between ListCell* and List*.
I have a strong suspicion that some of the "remaining bugs" you mention
would be caught by enabling the compiler to complain about using one
pointer type where the other is needed.

> It seems we're mangling pstate->p_namespace in parse_relation.c somehow,
> but I haven't managed to figure out why yet (any suggestions welcome)

Odd, the p_namespace manipulations look straightforward enough.  I
wonder if this could be a double-evaluation issue?

> I'm working hard to get this finished by the end of this week.

Offer of help is still open, if you want to try to divvy up the
remaining work.  I really want to see this get in.

            regards, tom lane

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: pgstat exec cleanup
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] pg_autovacuum fixes