== Postgres Weekly News - February 17 2008 == - Mailing list pgsql-announce
From | David Fetter |
---|---|
Subject | == Postgres Weekly News - February 17 2008 == |
Date | |
Msg-id | 20080218055320.GK12302@fetter.org Whole thread Raw |
List | pgsql-announce |
== Postgres Weekly News - February 17 2008 == PostgreSQL 8.4 development has started. Suncoast PostgreSQL Users' Group has formed. http://pugs.postgresql.org/spug == Postgres Product News == Bindings for D programming language released. http://pgfoundry.org/projects/pgd/ DBD::Pg 2.0.0 released. http://search.cpan.org/~turnstep/DBD-Pg-2.0.0/Pg.pm Devrim GUNDUZ has built a live CD based on Fedora 8 and Postgres 8.3. http://yum.pgsqlrpms.org/livecd.php neo_my2pg 0.6beta released http://pgfoundry.org/projects/my2postgres/ Robert Bernier has released pg_live 8.3.0.1. http://205.237.195.102/ AnySQL Maestro released. http://www.sqlmaestro.com/products/postgresql/maestro/ == Postgres Jobs for February == http://archives.postgresql.org/pgsql-jobs/2008-02/threads.php == Postgres Local == Federico Campoli will be speaking on Postgres internals at the GRASS/FOSS Meeting at DICA in Perugia, Italy on February 22. Information in Italian below. http://www.grassmeeting2008.unipg.it/?q=node/10 The PostgreSQL and FreeBSD groups will be meeting at FOSDEM Friday 8pm, February 22 at Bier Circus in Brussels. http://www.beerintheevening.com/pubs/s/27/27650/Le_Bier_Circus/Brussels The BSD and PostgreSQL teams share a developer room at FOSDEM 2008 in Brussels February 23-34, 2008. If you want to give a talk or help managing the dev room, contact fosdem@pgug.eu. For more information, see: https://www.bsdwiki.de/FOSDEM_2008 The European PostgreSQL User Group will elect a new board of directors. If you want to suggest a candidate or for the voting rules look at: http://www.pgug.eu/election.txt PGCon 2008 will be May 20-23 in Ottawa - now accepting proposals. http://www.pgcon.org/2008/papers.php PostgreSQL Conference East '08 talks are March 29 and 30 at the University of Maryland, College Park. The Call for Papers is open. http://www.postgresqlconference.org/ FISL 9.0 will be happening April 17-19, 2008 at PUCRS in Porto Alegre, Brazil. https://fisl.softwarelivre.org/9.0/ == Postgres in the News == Planet PostgreSQL: http://www.planetpostgresql.org/ General Bits, Archives and occasional new articles: http://www.varlena.com/GeneralBits/ Postgres Weekly News is brought to you this week by David Fetter Submit news and announcements by Sunday at 3:00pm Pacific time. Please send English language ones to david@fetter.org, German language to pwn@pgug.de, Italian language to pwn@itpug.org. == Applied Patches == Tom Lane committed: - In pgsql/src/backend/commands/vacuum.c, repair VACUUM FULL bug introduced by HOT patch: the original way of calculating a page's initial free space was fine, and should not have been "improved" by letting PageGetHeapFreeSpace do it. VACUUM FULL is going to reclaim LP_DEAD line pointers later, so there is no need for a guard against the page being too full of line pointers, and having one risks rejecting pages that are perfectly good move destinations. This also exposed a second bug, which is that the empty_end_pages logic assumed that any page with no live tuples would get entered into the fraged_pages list automatically (by virtue of having more free space than the threshold in the do_frag calculation). This assumption certainly seems risky when a low fillfactor has been chosen, and even without tunable fillfactor I think it could conceivably fail on a page with many unused line pointers. So fix the code to force do_frag true when notup is true, and patch this part of the fix all the way back. Per report from Tomas Szepe. - Fix SPI_cursor_open() and SPI_is_cursor_plan() to push the SPI stack before doing anything interesting, such as calling RevalidateCachedPlan(). The necessity of this is demonstrated by an example from Willem Buitendyk: during a replan, the planner might try to evaluate SPI-using functions, and so we'd better be in a clean SPI context. A small downside of this fix is that these two functions will now fail outright if called when not inside a SPI-using procedure (ie, a SPI_connect/SPI_finish pair). The documentation never promised or suggested that that would work, though; and they are normally used in concert with other functions, mainly SPI_prepare, that always have failed in such a case. So the odds of breaking something seem pretty low. In passing, make SPI_is_cursor_plan's error handling convention clearer, and fix documentation's erroneous claim that SPI_cursor_open would return NULL on error. Before 8.3 these functions could not invoke replanning, so there is probably no need for back-patching. - Stamp HEAD as 8.4devel. - Sync our regex code with upstream changes since last time we did this, which was Tcl 8.4.8. The main changes are to remove the never-fully-implemented code for multi-character collating elements, and to const-ify some stuff a bit more fully. In combination with the recent security patch, this commit brings us into line with Tcl 8.5.0. Note that I didn't make any effort to duplicate a lot of cosmetic changes that they made to bring their copy into line with their own style guidelines, such as adding braces around single-line IF bodies. Most of those we either had done already (such as ANSI-fication of function headers) or there is no point because pgindent would undo the change anyway. - In pgsql/src/backend/parser/parse_clause.c, remove ancient restriction that LIMIT/OFFSET can't contain a sub-select. This was probably protecting some implementation limitation when it was put in, but as far as I can tell the planner and executor have no such assumption anymore; the case seems to work fine. Per a gripe from Grzegorz Jaskiewicz. - Allow AS to be omitted when specifying an output column name in SELECT (or RETURNING), but only when the output name is not any SQL keyword. This seems as close as we can get to the standard's syntax without a great deal of thrashing. Original patch by Hiroshi Saito, amended by me. - Update timezone code to track the upstream changes since 2003. In particular this adds support for 64-bit tzdata files, which is needed to support DST calculations beyond 2038. Add a regression test case to give some minimal confidence that that really works. Heikki Linnakangas - Update docs to reflect the fact that we can now deal with DST rules outside the 32-bit-time_t range. Also, refer to Olson's tz database as the 'zoneinfo' database, a name that upstream sometimes uses, not 'zic database' which they never use. - Replace time_t with pg_time_t (same values, but always int64) in on-disk data structures and backend internal APIs. This solves problems we've seen recently with inconsistent layout of pg_control between machines that have 32-bit time_t and those that have already migrated to 64-bit time_t. Also, we can get out from under the problem that Windows' Unix-API emulation is not consistent about the width of time_t. There are a few remaining places where local time_t variables are used to hold the current or recent result of time(NULL). I didn't bother changing these since they do not affect any cross-module APIs and surely all platforms will have 64-bit time_t before overflow becomes an actual risk. time_t should be avoided for anything visible to extension modules, however. - Add back #include <time.h> in a couple of files that seem to need it on Linux. Magnus Hagander committed: - In pgsql/src/timezone/pgtz.c, update timezone mapping for Windows with new timezones added in windows servicepacks. Fix timezone mapping for "Mexico 2." Bruce Momjian committed: - In pgsql/src/tools/RELEASE_CHANGES, remove "update ecpg regression expected files for new library number." No longer necessary. - Bump minor library version numbers for 8.4. - In pgsql/src/tools/RELEASE_CHANGES, update wording for minor library bumping. - In pgsql/src/tools/RELEASE_CHANGES, add sub-bullet decoration. - In pgsql/doc/src/sgml/backup.sgml, add section to Migration talking about typical areas that change between major releases. - In pgsql/doc/src/sgml/datatype.sgml, correct XML markup typo. - In pgsql/src/interfaces/libpq/fe-secure.c, rename a libpq NOT_USED SSL function to verify_peer_name_matches_certificate(), clarify some of the function's variables and logic, and update a comment. This should make SSL improvements easier in the future. - In pgsql/doc/src/sgml/config.sgml, add suggestion about how to set checkpoint_warning to log all checkpoints. - In pgsql/doc/src/sgml/config.sgml, no need to use checkpoint_warning to log checkpoints --- we added log_checkpoints in 8.3. - Mark TODO as done: 'Allow AS in "SELECT col AS label" to be optional in certain cases.' Alvaro Herrera committed: - In pgsql/src/tools/RELEASE_CHANGES, update minor version bumping policy. Michael Meskes committed: - In ecpg, added SQLSTATE macro closing bug #3961. - In ecpg, EXECUTE can return NOT FOUND so it should be checked here, too. Changed regression test accordingly. - Changed the way symbols are defined in C in INFORMIX mode. Added SQLSTATE macro closing bug #3961. EXECUTE can return NOT FOUND so it should be checked here too. - In pgsql/src/interfaces/ecpg/preproc/pgc.l, fixed conflicting commit. - In pgsql/src/interfaces/ecpg/test/expected/thread-prep.c, updated expected result for regression test. - Removed duplicate include of ecpgtype.h which meant I had to adapt all expected results. Changed INFORMIX mode symbol definition yet again because the old way didn't work on NetBSD. Hopefully this one does. - Changed INFORMIX mode symbol definition yet again because the old way didn't work on NetBSD. Peter Eisentraut committed: - Upgrade to autoconf 2.61. Change configure.in to use autoconf 2.61 and update generated files. Update build system and documentation to support now directory variables offered by autoconf 2.61. Replace usages of PGAC_CHECK_ALIGNOF by AC_CHECK_ALIGNOF, now available in autoconf 2.61. Drop our patched version of AC_C_INLINE, as autoconf now has the change. == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == Heikki Linnakangas sent in two revisions of a patch to re-sync the tzcode library with its upstream counterpart. Gevik Babakhani sent in a patch intended to fix NLS support on 8.3 compiled with MSVC. Brendan Jurd sent in a patch to psql's \du which shows non-default role attributes one to a line in a single column. Tom Lane sent in a patch which changes the TOAST strategies per suggestions by Gregory Stark, Jan Wieck and others.
pgsql-announce by date: