In pgsql/src/backend/access/common/tupconvert.c, department of marginal improvements: teach tupconvert.c to avoid doing a physical conversion when there are dropped columns in the same places in the input and output tupdescs. This avoids possible performance loss from the recent patch to improve dropped-column handling, in some cases where the old code would have worked.

In pgsql/contrib/unaccent/Makefile, fix copy-and-pasteo that might explain some of the buildfarm's indigestion about this module.

In pgsql/contrib/unaccent/unaccent.c, fix some *other* compiler warnings from a different gcc version.

Print the actual DB encoding in the unaccent regression test. This is to help make it more obvious what the problem is, if the encoding isn't what the test expects.

Fix overflow for INTERVAL 'x ms' where x is more than a couple million, and integer datetimes are in use. Per bug report from Hubert Depesz Lubaczewski. Alex Hunsaker.

Allow mixing of traditional and SQL:2008 LIMIT/OFFSET syntax. Being rigid about it doesn't simplify the grammar at all, and it does invite confusion among those who only read the SELECT syntax summary and not the full details. Per gripe from Jaime Casanova.

In pgsql/src/tools/version_stamp.pl, fix version_stamp.pl to allow 'alphaN' version stamps. Not sure how Peter Eisentraut did that without fixing this ...

In pgsql/src/backend/commands/explain.c, include resjunk columns in EXPLAIN VERBOSE output lists. Per discussion.

Tweak ExecIndexEvalRuntimeKeys to forcibly detoast any toasted comparison values before they get passed to the index access method. This avoids repeated detoastings that will otherwise ensue as the comparison value is examined by various index support functions. We have seen a couple of reports of cases where repeated detoastings result in an order-of-magnitude slowdown, so it seems worth adding a bit of extra logic to prevent this. I had previously proposed trying to avoid duplicate detoastings in general, but this fix takes care of what seems the most important case in practice with very little effort or risk. Back-patch to 8.4 so that the PostGIS folk won't have to wait a year to have this fix in a production release. (The issue exists further back, of course, but the code's diverged enough to make backpatching further a higher-risk action. Also it appears that the possible gains may be limited in prior releases because of different handling of lossy operators.)

Make TRUNCATE do truncate-in-place when processing a relation that was created or previously truncated in the current (sub)transaction. This is safe since if the (sub)transaction later rolls back, we'd just discard the rel's current physical file anyway. This avoids unreasonable growth in the number of transient files when a relation is repeatedly truncated. Per a performance gripe a couple weeks ago from Todd Cook.

Fix a violation of WAL coding rules in the recent patch to include an "all tuples visible" flag in heap page headers. The flag update *must* be applied before calling XLogInsert, but heap_update and the tuple moving routines in VACUUM FULL were ignoring this rule. A crash and replay could therefore leave the flag incorrectly set, causing rows to appear visible in seqscans when they should not be. This might explain recent reports of data corruption from Jeff Ross and others. In passing, do a bit of editorialization on comments in visibilitymap.c.

Peter Eisentraut a commité :

In pgsql/doc/src/sgml/Makefile, make version.sgml depend on configure instead of Makefile.global. This cheats a bit, but it avoids unsatisfied dependencies in distribution tarballs. (found by make distcheck)

Add release notes for 8.5alpha1

In pgsql/doc/src/sgml/release-8.5.sgml, remove duplicate from release notes, and reorganize slightly.

In pgsql/src/tools/msvc/vcregress.pl, pick up REGRESS_OPTS from contrib makefiles. Along the way, fix ordering of makefile tests to mimic gmake.

Bruce Momjian a commité :

In pgsql/doc/src/sgml/unaccent.sgml, remove tabs from SGML.

Correctifs rejetés (à ce jour)

Pas de déception cette semaine :-)

Correctifs en attente

ITAGAKI Takahiro sent in a WIP patch which adds buffer usage information to EXPLAIN and contrib/pg_stat_statements.

Zoltan Boszormenyi sent in another revision of his ECPG patch.

Andrew Dunstan sent in a patch which sets the "explain" root element for auto-explain XML/JSON output.

Jan Otto sent in a patch to work around a bug in OS/X Snow Leopard's readdir().

Tom Lane and Josh Berkus sent in revisions of the alpha1 release notes.

Tom Lane sent in a WIP patch to make a case common in PostGIS work faster by not repeatedly de-TOASTing under certain conditions.

Stef Walter sent in another revision of the patch to add samehost and samenet directives to pg_hba.conf.

ITAGAKI Takahiro sent in another WIP patch to base dblink on SQL/MED Foreign Data Wrappers.

ITAGAKI Takahiro sent in a patch intended to fix a bug in handling default values in reloptions.

ITAGAKI Takahiro sent in a patch to fix the cache lookup failure in auto_explain log_verbose

ITAGAKI Takahiro sent in a patch intended to help add 2PC semantics to foreign data wrappers.

Robert Haas sent in an updated version of the hot standby patch.

Kevin Grittner sent in a patch to change the supplied module for Linux startup scripts.

Heikki Linnakangas sent in two patches to return data from b-tree indexes and use it to satisfy qualifiers. The first patch changes the API for indexam by splitting indexam_getnext into two pieces. The second does the actual work.

Robert Haas sent in another update to the hot standby patch.

James Pye sent in another revision of his PL/Python3 patch.

Roger Leigh sent in a flock of patches intended to allow psql to use Unicode box-drawing characters for borders.