Par N Bougain le 28/02/2008 - 00:35
Nouvelles hebdomadaires de PostgreSQL - 24 février 2008
- Le FOSDEM fut un grand succès pour PostgreSQL. Il arrivait souvent que les conférences se suivent debout, les personnes qui se sont occupés de la rencontre étaient enthousiastes et pleines de ressources, et les donations ont atteint des sommets. Merci à tous ceux qui ont permis cela.
- Le PUG européen a maintenant son comité de direction : Gabriele Bartolini (It), Magnus Hagander (Suède), Andreas Scherbaum (All) et Jean-Paul Argudo (fr). Félicitations à tous !
Les nouveautés des produits dérivés
Offres d'emplois autour de PostgreSQL en février
PostgreSQL dans les média
PostgreSQL Weekly News / les nouvelles hebdomadaires vous sont offertes cette semaine par David Fetter. La traduction en est assurée par l'équipe PostgreSQLFr.
Proposez vos articles ou annonces avant dimanche 15:00 (heure du Pacifique). Merci de les envoyer en anglais à david (a) fetter.org, en allemand à pwn (a) pgug.de, en italien à pwn (a) itpug.org.
Peter Eisentraut a commité :
- In pgsql/src/backend/tsearch/Makefile, observe errors.
- Added --htmldir option to pg_config, equivalent to the new configure option.
- Refactor backend makefiles to remove lots of duplicate code.
- In pgsql/src/backend/access/common/Makefile, remove another target I forgot during the refactoring.
- Remove pgsql/src/backend/port/sunos4. This subdirectory has been unused, dead, and broken for 10 years.
- More refactoring, so that the SUBSYS.o rules are now all in one place.
- Backport fixed AC_FUNC_FSEEKO
Bruce Momjian a commité :
- autoconf 2.61's AC_FUNC_FSEEKO reports success/failure differently, so reorganize code for NetBSD/BSDi port/fseeko.c usage, and make code more modular.
- Put fseeko check back in old location, in hopes of silencing build warnings.
- Put back code modularization of fseeko() configure checks.
Tom Lane a commité :
- Remove unnecessary opening of other relation in RI_FKey_keyequal_upd_pk and RI_FKey_keyequal_upd_fk, as well as no-longer-needed calls of ri_BuildQueryKeyFull. Aside from saving a few cycles, this avoids needless deadlock risks when an update is not changing the columns that participate in an RI constraint. Per a gripe from Alexey Nalbat. Back-patch to 8.3. Earlier releases did have a need to open the other relation due to the way in which they retrieved information about the RI constraint, so this problem unfortunately can't easily be improved pre-8.3. Tom Lane and Stephan Szabo
- In pgsql/src/backend/catalog/catalog.c, put a CHECK_FOR_INTERRUPTS call into the loops that try to find a unique new OID or new relfilenode. If the existing OIDs are sufficiently densely populated, this could take a long time (perhaps even be an infinite loop), so it seems wise to allow the system to respond to a cancel interrupt here. Per a gripe from Jacky Leng. Backpatch as far as 8.1. Older versions just fail on OID collision, instead of looping.
- In pgsql/src/bin/pg_ctl/pg_ctl.c, fix mistakes in pg_ctl's code for "start -w" that tries to cope with non-default settings for the postmaster's port number. The code to parse command line options and postgresql.conf entries wasn't quite right about whitespace or quotes, and it was coded in a not-very-readable way too. Per bug #3969 from Itagaki Takahiro, though this is more extensive than his proposed patch (which fixed only the whitespace problem). This code has been broken since it was put in in 8.0, so patch all the way back.
- In pgsql/src/test/regress/pg_regress.c, make pg_regress -V consistent with the corresponding code in other programs: use puts with a compile-time-constant string.
- Rename miscadmin.h's PG_VERSIONSTR macro to PG_BACKEND_VERSIONSTR to make it a bit clearer what it is, and get rid of duplicate definitions in initdb and pg_ctl.
- Change the declaration of struct varlena so that the length word is represented as "char ..." not "int32". Since the length word is never supposed to be accessed via this struct member anyway, this won't break any existing code that is following the rules. The advantage is that C compilers will no longer assume that a pointer to struct varlena is word-aligned, which prevents incorrect optimizations in TOAST-pointer access and perhaps other places. gcc doesn't seem to do this (at least not at -O2), but the problem is demonstrable on some other compilers. I changed struct inet as well, but didn't bother to touch a lot of other struct definitions in which it wouldn't make any difference because there were other fields forcing int alignment anyway. Hopefully none of those struct definitions are used for accessing unaligned Datums.
- In pgsql/src/backend/utils/misc/help_config.c, avoid trying to print a NULL char pointer in --describe-config. On some platforms this works, but on some it crashes. Zdenek Kotala
- Use our own getopt() and getopt_long() on Solaris, because that platform's versions don't handle long options the way we want. Per Zdenek Kotala.
Magnus Hagander a commité :
- In pgsql/src/tools/msvc/Solution.pm, unbreak MSVC build after recent addition of HTMLDIR.
- In pgsql/src/timezone/strftime.c, fix function prototype to silence compiler warnings.
- In pgsql/src/tools/msvc/Project.pm, un-break msvc port yet again (it started pulling in the Darwin port files, which obviously didn't compile).
Alvaro Herrera a commité :
- In pgsql/src/backend/postmaster/autovacuum.c, change error message to be able to differentiate the two cases. Per suggestion from Jaime Casanova.
- Improve error messages emitted when VACUUM and ANALYZE skip a table. Per gripe from Clodoaldo Pinto Neto.
Correctifs rejetés (à ce jour)
- Aucun déçu cette semaine :-)
Correctifs en attente
- Gevik Babakhani sent in a patch to fix MSVC compilation on MSVC.
- Tatsuhito Kasahara sent in two revisions of a patch intended to change pgstatindex.c and pgstattuple.sql, where some variables are defined with int type, to a larger numeric type, which in turn allows for larger tables.
- Davd Page sent in a patch which fixes initdb failures on Windows stemming from recent security-related changes to that platform.
- Zdenek Kotala sent in three revisions of a patch intended to fix non-portable getopt() code.
- Neil Conway sent in a patch to fix some memory leaks in the implementaiton of set-returning functions.
- Peter Eisentraut sent in a patch links the backend in one piece instead of many SUBSYS.so files.
- Robert Lor sent in a patch to change the DTrace probes from the DTRACE_PROBEn implementation to the header macro implementation so that the probes can be used on OSs other than Solaris including OSX Tiger.
- Heikki Linnakangas sent in an optimization for CopyReadLineText which should speed up COPY operations in many common cases.