From: | Neil Conway <neilc(at)samurai(dot)com> |
---|---|
To: | PostgreSQL Developers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | list rewrite committed |
Date: | 2004-05-26 04:47:26 |
Message-ID: | 40B4215E.2090806@samurai.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
I've applied the list rewrite patch to CVS HEAD. I've also sent a
copy of the patch I applied to the -patches list.
Notes:
- the tree compiles without warnings and passes the regression
tests. I'm not aware of any bugs, regression failures, or compiler
warnings caused by the list rewrite patch -- please let me know if
you encounter anything
- client code that uses the List API is _not_ source compatible with
the new List API. The most common change will be the need to change
the foreach() iteration variable to a ListCell*, rather than a
List*. There are also some subtle changes in behavior: for example,
lcons() is now destructive (in the sense that you cannot call it on
a list and expect the list you pass to lcons() to be unmodified;
this was the case with the old list API)
Remaining work:
- investigate inline functions for non-GCC compilers
- disable the use of the compatibility API throughout the tree and
change the code over to use the new API function names. This ought
to be largely a mechanical search and replace operation -- any
patches are welcome. I plan to start converting the remainder of the
tree in this fashion tomorrow.
- use the new for_each_cell() and forboth() macros throughout the
tree, as appropriate.
- remove the FastList API -- there is no need for it anymore. Tom,
would you like to do this or should I?
- anything else?
Thanks to Tom and Alvaro for their assistance in completing this work.
-Neil
From | Date | Subject | |
---|---|---|---|
Next Message | Christopher Kings-Lynne | 2004-05-26 05:34:29 | Re: list rewrite committed |
Previous Message | Bruce Momjian | 2004-05-26 03:42:04 | Re: [COMMITTERS] pgsql-server: Add code to identify_system_timezone() |