Skip site navigation (1) Skip section navigation (2)

Re: embedded list v3

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Peter Geoghegan <peter(at)2ndquadrant(dot)com>
Subject: Re: embedded list v3
Date: 2012-10-01 15:33:01
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
Andres Freund <andres(at)2ndquadrant(dot)com> writes:
> On Sunday, September 30, 2012 10:33:28 PM Tom Lane wrote:
>> I'm still pretty desperately unhappy with your insistence on circularly
>> linked dlists. Not only does that make initialization problematic,
>> but now it's not even consistent with slists.

> We literally have tens of thousands list manipulation a second if the server is 
> busy.

Tens of thousands, with maybe 1ns extra per call, adds up to what?

> I am really sorry for being stubborn here, but I changed to circular lists 
> after profiling and finding that pipeline stalls & misprediced branches where
> the major thing I could change. Not sure how we can resolv this :(

I'm going to be stubborn too.  I think you're allowing very small
micro-optimization arguments to contort the design of a fundamental data
structure, in a way that makes it harder to use.  That's not a tradeoff
I like.  Especially when the micro-optimization isn't even uniformly a
win.  I remain of the opinion that the extra cycles spent on iteration
(which are real despite your denials) will outweigh any savings in list
alteration in many use-cases.

			regards, tom lane

In response to


pgsql-hackers by date

Next:From: Tom LaneDate: 2012-10-01 15:37:21
Subject: Re: Question regarding Sync message and unnamed portal
Previous:From: Peter GeogheganDate: 2012-10-01 15:22:21
Subject: Re: Hash id in pg_stat_statements

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group