Re: embedded list v2
Alvaro Herrera <alvherre@2ndquadrant.com>
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Andres Freund <andres@2ndquadrant.com>
Cc: Pg Hackers <pgsql-hackers@postgresql.org>, Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@postgresql.org>, Peter Geoghegan <peter@2ndquadrant.com>
Date: 2012-09-14T17:22:18Z
Lists: pgsql-hackers
Attachments
- 0001-initial-ilist-stuff-from-Andres.patch (application/octet-stream) patch 0001
- 0002-Remove-usage-of-lib-dllist.h-and-replace-it-by-the-n.patch (application/octet-stream) patch 0002
- 0003-convert-catcache.h-cc_next-into-an-slist.patch (application/octet-stream) patch 0003
Here's an updated version of both patches, as well as a third patch that converts the cc_node list link in catcache.c into an slist. There are very few changes here; in ilist.h a singleton slist was being considered empty. Andres reported this to me privately. One other change is that in catcache.c we no longer compute a new HASH_INDEX on a CatCTup in order to remove it from its list; instead we store a pointer to the list in the element itself. We weren't able to measure any difference between these two approaches to the problem, so we chose the approach that hasn't been previously vetoed -- see http://archives.postgresql.org/message-id/2852.1174575239%40sss.pgh.pa.us I also addressed the unused_attr thingy by taking it out and having the non-debug version emit a cast to void of the argument. I think I would get this committed during CF2, and then have a look at changing some uses of SHM_QUEUE with ilists too. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Provide some static-assertion functionality on all compilers.
- 0d0aa5d29175 9.3.0 cited
-
Add infrastructure for compile-time assertions about variable types.
- ea473fb2dee7 9.3.0 cited
-
Remove 576 references of include files that were not needed.
- e0522505bd13 8.2.0 cited
-
More include file adjustments.
- b43ebe5f83b2 8.2.0 cited
-
Allow each C include file to compile on its own by including any needed
- b85a965f5fc7 8.2.0 cited