== PostgreSQL Weekly News - July 29 2007 == - Mailing list pgsql-announce
From | David Fetter |
---|---|
Subject | == PostgreSQL Weekly News - July 29 2007 == |
Date | |
Msg-id | 20070730045440.GI7498@fetter.org Whole thread Raw |
List | pgsql-announce |
== PostgreSQL Weekly News - July 29 2007 == PostgreSQL's "Army of Smurfs" was out in force at OSCON 2007, and lots of people came by asking specific questions in contrast to the usual, "why not MySQL" of the past. One great moment: the security guard coming up to the booth, saying words to the effect of, "ignore this badge. I have Postgres installed on a machine and want to know how to use it better." == PostgreSQL Product News == Archiveopteryx 2.02 released http://www.archiveopteryx.org/ == PostgreSQL Jobs for July == http://archives.postgresql.org/pgsql-jobs/2007-07/threads.php == PostgreSQL Local == As discussed at the first meeting of what will become the European PostgreSQL Users Group after pgDay in Prato, and now has a mailing list set up. <pgsql-eu-general@postgresql.org> == PostgreSQL in the News == Planet PostgreSQL: http://www.planetpostgresql.org/ General Bits, Archives and occasional new articles: http://www.varlena.com/GeneralBits/ PostgreSQL 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 to pwn@pgug.de. == Applied Patches == Peter Eisentraut committed: - In pgsql/doc/src/sgml/datatype.sgml, update standards conformance information about the bigint type. Found by Michael Glaesemann. Michael Meskes committed: - Synced ECPG parser. Neil Conway committed: - In pgsql/src/backend/executor/execUtils.c, slightly refactor ExecOpenScanRelation(): we can use ExecRelationIsTargetRelation() to check if the relation is a target rel, rather than scanning through the result relation array ourselves. - Implement RETURN QUERY for PL/PgSQL. This provides some convenient syntax sugar for PL/PgSQL set-returning functions that want to return the result of evaluating a query; it should also be more efficient than repeated RETURN NEXT statements. Based on an earlier patch from Pavel Stehule. Tom Lane committed: - Remove FileUnlink(), which wasn't being used anywhere and interacted poorly with the recent patch to log temp file sizes at removal time. Doesn't seem worth fixing since it's unused. In passing, make a few elog messages conform to the message style guide. - Arrange to put TOAST tables belonging to temporary tables into special schemas named pg_toast_temp_nnn, alongside the pg_temp_nnn schemas used for the temp tables themselves. This allows low-level code such as the relcache to recognize that these tables are indeed temporary, which enables various optimizations such as not WAL-logging changes and using local rather than shared buffers for access. Aside from obvious performance benefits, this provides a solution to bug #3483, in which other backends unexpectedly held open file references to temporary tables. The scheme preserves the property that TOAST tables are not in any schema that's normally in the search path, so they don't conflict with user table names. initdb forced because of changes in system view definitions. - Suppress warning when compiling with -DPROFILE_PID_DIR: sys/stat.h is supposed to be included when using mkdir(). - Adjust horology test to avoid join-plan-dependent result ordering in a few queries. Should fix buildfarm failures arising from new, more aggressive autovac settings. - In pgsql/src/backend/optimizer/util/predtest.c, fix predicate-proving logic to cope with binary-compatibility cases when checking whether an IS NULL/IS NOT NULL clause is implied or refuted by a strict function. Per example from Dawid Kuroczko. Backpatch to 8.2 since this is arguably a performance bug. - Create a new dedicated Postgres process, "wal writer", which exists to write and fsync WAL at convenient intervals. For the moment it just tries to offload this work from backends, but soon it will be responsible for guaranteeing a maximum delay before asynchronously-committed transactions will be flushed to disk. This is a portion of Simon Riggs' async-commit patch, committed to CVS separately because a background WAL writer seems like it might be a good idea independently of the async-commit feature. I rebased walwriter.c on bgwriter.c because it seemed like a more appropriate way of handling signals; while the startup/shutdown logic in postmaster.c is more like autovac because we want walwriter to quit before we start the shutdown checkpoint. - Just noticed that libpq thinks the maximum command tag length is 40, whereas in the backend it's been 64 for some time. Hasn't mattered because no actual tags exceed 40 bytes, but for consistency they should be alike. Alvaro Herrera committed: - Set a default autovacuum vacuum_cost_delay value of 20ms, to avoid excessive I/O utilization, per discussion. While at it, lower the autovacuum vacuum and analyze threshold values to 50 tuples. It is a bit higher (i.e. more conservative) than what I originally proposed but much better than the old values for small tables. - Reword paragraph about the autovacuum_max_workers setting. Patch from Jim Nasby. Magnus Hagander committed: - Rename DLLIMPORT macro to PGDLLIMPORT to avoid conflict with third party includes (like tcl) that define DLLIMPORT. - Hiroshi Saito's fix to pgsql/src/interfaces/libpq/win32.mak, the standalone win32 makefile (MSVC6) for SSPI and GSSAPI. - In pgsql/src/tools/msvc/Project.pm, disable warning 4090 = different const qualifiers on msvc since it warns about things that aren't wrong. - In pgsql/src/pl/plperl/GNUmakefile, silence compiler warning on MingW. - In pgsql/src/backend/libpq/pqcomm.c, silence compiler warning on MingW. - Make it possible, and default, for MingW to build with SSPI support by dynamically loading the function that's missing from the MingW headers and library. - The proper guaranteed buffer size for errors is INITIAL_EXPBUFFER_SIZE, not PQERRORMSG_LENGTH. Backport only - the proper fix in HEAD is to use PQExpBuffers everywhere. - Use PQExpBuffer for error message in fe-auth.c. In passing, change functions that passedin both PGconn and parts of it to just pass in the PGconn. - Fix typo in pgsql/src/interfaces/libpq/fe-auth.c. - SSPI authentication on Windows. == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == Andrew Dunstan sent in a patch to enable logging of start time/cookie for all backend processes. Gregory Stark sent in a patch which documents and removes some dead code in pgsql/src/backend/access/heap/tuptoaster.c which resulted from the varvarlena patch. Erwin Brandstetter suggested a patch which changes the GRANT docs to reflect current realities. Gregory Stark sent in a patch which fixes some misalignments from a pg_indent run. Simon Riggs sent in a patch which simplifies the stats_ parameters. Zdenek Kotala sent in a patch to pgcrypto which fixes two problems on systems, like the default Solaris 10 installation, without strong encryption. Per discussion at http://archives.postgresql.org/pgsql-hackers/2007-07/msg00762.php
pgsql-announce by date: