Nouvelles hebdomadaires de PostgreSQL - 4 octobre 2009
Les nouveautés des produits dérivés
(lien vers l'article original)
Offres d'emplois autour de PostgreSQL en octobre
PostgreSQL Local
PostgreSQL dans les média
PostgreSQL Weekly News / les nouvelles hebdomadaires vous sont offertes cette semaine par David Fetter. Traduction par l'équipe PostgreSQLFr sous licence CC BY-NC-SA.
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.
Correctifs appliqués
Michael Meskes a commité :
- In pgsql/src/interfaces/ecpg/preproc/README.parser, added some explanation about how the parser is generated, taken from an email by Zoltan Boszormenyi.
- In ECPG, applied patch by Zoltan Boszormenyi to fix memory leak in decimal handling.
Andrew Dunstan a commité :
- In pgsql/src/pl/plperl/plperl.c, convert a perl array to a postgres array when returned by Set Returning Functions as well as +non SRFs. Backpatch to 8.1 where these facilities were introduced. with a little help from Abhijit Menon-Sen.
Tom Lane a commité :
- Fix equivclass.c's not-quite-right strategy for handling X=X clauses. The original coding correctly noted that these aren't just redundancies (they're effectively X IS NOT NULL, assuming = is strict). However, they got treated that way if X happened to be in a single-member EquivalenceClass already, which could happen if there was an ORDER BY X clause, for instance. The simplest and most reliable solution seems to be to not try to process such clauses through the EquivalenceClass machinery; just throw them back for traditional processing. The amount of work that'd be needed to be smarter than that seems out of proportion to the benefit. Per bug #5084 from Bernt Marius Johnsen, and analysis by Andrew Gierth.
- Allow MOVE FORWARD n, MOVE BACKWARD n, MOVE FORWARD ALL, MOVE BACKWARD ALL in plpgsql. Clean up a couple of corner cases in the MOVE/FETCH syntax. Pavel Stehule.
- Assorted improvements in contrib/hstore. Remove the 64K limit on the lengths of keys and values within an hstore. (This changes the on-disk format, but the old format can still be read.) Add support for btree/hash opclasses for hstore --- this is not so much for actual indexing purposes as to allow use of GROUP BY, DISTINCT, etc. Add various other new functions and operators. Andrew (RhodiumToad) Gierth.
- In pgsql/contrib/hstore/hstore_op.c, fix bogus Assert, per buildfarm results.
- Support "samehost" and "samenet" specifications in pg_hba.conf, by enumerating the machine's IP interfaces to look for a match. Stef Walter.
- Fix erroneous handling of shared dependencies (ie dependencies on roles) in CREATE OR REPLACE FUNCTION. The original code would update pg_shdepend as if a new function was being created, even if it wasn't, with two bad consequences: pg_shdepend might record the wrong owner for the function, and any dependencies for roles mentioned in the function's ACL would be lost. The fix is very easy: just don't touch pg_shdepend at all when doing a function replacement. Also update the CREATE FUNCTION reference page, which never explained exactly what changes and doesn't change in a function replacement. In passing, fix the CREATE VIEW reference page similarly; there's no code bug there, but the docs didn't say what happens.
- Make sure that GIN fast-insert and regular code paths enforce the same tuple size limit. Improve the error message for index-tuple-too-large so that it includes the actual size, the limit, and the index name. Sync with the btree occurrences of the same error. Back-patch to 8.4 because it appears that the out-of-sync problem is occurring in the field. Teodor Sigaev and Tom Lane.
- In pgsql/src/backend/postmaster/pgstat.c, fix an oversight in an 8.3-era patch: pgstat_initstats should allow stats to be collected for sequences. Report and fix by Akira Kurosawa.
- Fix a couple of issues in recent patch to print updates to postgresql.conf settings: avoid calling superuser() in contexts where it's not defined, don't leak the transient copies of GetConfigOption output, and avoid the whole exercise in postmaster child processes. I found that actually no current caller of GetConfigOption has any use for its internal check of GUC_SUPERUSER_ONLY. But rather than just remove that entirely, it seemed better to add a parameter indicating whether to enforce the check. Per report from Simon and subsequent testing.
- In pgsql/src/backend/libpq/hba.c, fix assorted memory leaks in pg_hba.conf parsing. Over a sufficiently large number of SIGHUP cycles, these would have run the postmaster out of memory. Noted while testing memory-leak scenario in postgresql.conf configuration-change-printing patch.
Peter Eisentraut a commité :
- In pgsql/doc/src/sgml/stylesheet.dsl, add tooltips to the header links, and make title a link to the home page based on an idea by Richard Huxton.
Alvaro Herrera a commité :
- Ensure that a cursor has an immutable snapshot throughout its lifespan. The old coding was using a regular snapshot, referenced elsewhere, that was subject to having its command counter updated. Fix by creating a private copy of the snapshot exclusively for the cursor. Backpatch to 8.4, which is when the bug was introduced during the snapshot management rewrite.
Bruce Momjian a commité :
- In pgsql/doc/src/sgml/config.sgml, document the purpose of the GUC listen_addresses.
Correctifs rejetés (à ce jour)
- No one was disappointed this week :-)
Correctifs en attente
- Heikki Linnakangas sent in more fixes atop earlier Hot Standby patches.
- Abhijit Menon-Sen sent in another patch to fix return_next in PL/Perl for arrays.
- ITAGAKI Takahiro sent in two more revisions of the patch expanding the functionality of CREATE TABLE LIKE...
- KaiGai Kohei sent in another revision of the large object ACL patch.
- Marko (johto) Tiikkaja sent in another revision of the patch to refactor the executor to have nodes for INSERT, UPDATE and DELETE. This is among other things infrastructure for the Writeable CTE feature.
- Alvaro Herrera sent in missing files from the patch to add per-ROLE, per-database GUC settings, then a patch for psql to make it display same.
- Devrim GUNDUZ sent in a doc patch which updates links to some external projects.
- Euler Taveira de Oliveira sent in a reviewed version of ITAGAKI Takahiro's patch to include buffer usage in EXPLAIN.
- Brad T. Sliger sent in a revised version of the patch to allow Unicode codes for pretty-printing in psql.
- KaiGai Kohei sent in a patch atop the ACL rework patch to eliminate permission checks in FindConversion() and EnableDisableRule().
- Alvaro Herrera sent in three more revisions of the per-ROLE, per-database GUC patch.
- Robert Leigh sent in two more revisions of the patch to add UTF8 pretty-printing to psql.
- Petr (PJMODOS) Jelinek sent in another revision of the DefaulsACLs patch and a follow-up patch with adjusted docs.
- Laurenz Albe sent in a patch to add a hook for checking password strength, per discussion.
- Heikki Linnakangas sent in another patch for Hot Standby.
- David Gould sent in a patch to limit the amount of memory allocated per session.
- Brendan Jurd sent in a patch for the named/mixed notation for PL/pgsql.
- ITAGAKI Takahiro sent in another revision of the buffer usage patch for EXPLAIN.
- Fujii Masao sent in another revision of the Streaming Replication patch.
- Jeff Davis sent in another revision of the mixed/named function notation patch for PL/pgsql.
- Roger Leigh sent in another revision of the Unicode pretty-printing patch for psql, this time with a switch to change to ASCII format in UTF-8 locales.
- KaiGai Kohei sent in another revision of the ACL rework patch.
- Bernd Helmle sent in a patch atop the per-ROLE, per-database GUC settings patch which adds ALTER ROLE ... IN DATABASE functionality.
- Pavel Stehule sent in another revision of the named/mixed PL/pgsql parameter notation based in part on Brendan Jurd's and Jeff Davis's patches.
- Zoltan Boszormenyi sent in another ECPG patch for Informix compatibility.
- Zoltan Boszormenyi sent another flock of patches for dynamic cursor names in ECPG.
- Alvaro Herrera sent in a patch to remove the useless pushing of an active snapshot on PortalStart.
- Ian Small sent in a patch which does alphagram fuzzy string matching.
- Joe Conway sent in a patch to fix a memory leak in dblink.