== PostgreSQL Weekly News - July 22 2007 ==
От | David Fetter |
---|---|
Тема | == PostgreSQL Weekly News - July 22 2007 == |
Дата | |
Msg-id | 20070723064821.GA20108@fetter.org обсуждение исходный текст |
Список | pgsql-announce |
== PostgreSQL Weekly News - July 22 2007 == The announcements of new versions of the pgInstaller are on -hackers (for development snaps) and on -announce (for production versions), and no longer on the pgfoundry page. They can always be downloaded from http://www.postgresql.org/ftp/win32 == PostgreSQL Product News == Another PostgreSQL Diff Tool 1.0.0_beta24 released http://pgfoundry.org/projects/apgdiff/ DbVisualizer 6.0 released. http://www.minq.se/products/dbvis/versions/6.0/dbvis60.html MicroOLAP Database Designer 1.2.1 for PostgreSQL released. http://microolap.com/products/database/postgresql-designer/ mODBC_Installer beta 0.99.120 released. https://projects.commandprompt.com/public/odbcng/wiki/Downloads Sylph-Searcher 1.0.0 released http://sylpheed.sraoss.jp/en/download.html#searcher == PostgreSQL Jobs for July == http://archives.postgresql.org/pgsql-jobs/2007-07/threads.php == PostgreSQL Local == PDXPUG Day and PgParty were a hit. Watch http://planetpostgresql.org and other usual for details. OSCON is happening this week, with many luminaries. == 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/src/test/regress/expected/plpgsql.out, fix regression tests for PL/pgSQL error message changes. - In pgsql/src/pl/plpgsql/src/pl_funcs.c, capitalize language key words in error messages. Andrew Dunstan committed: - Only use the pipe chunking protocol if we know the syslogger should be catching stderr output, and we are not ourselves the syslogger. Otherwise, go directly to stderr. Bug noticed by Tom Lane. Backpatch as far as 8.0. Alvaro Herrera committed: - In pgsql/src/test/regress/pg_regress.c, cast NULL to a pointer type in the execl() call to avoid a compiler warning on some platforms and possibly a bug. Per report from Stefan Kaltenbrunner and subsequent discussion. Bruce Momjian committed: - ITAGAKI Takahiro's patch to doc/src/sgml/maintenance.sgml which fixes auto-analyze documentation. - Another patch which documents the age() behavior. - Document that 'deleted' is also tracked by autovacuum. - Properly adjust age() seconds to match the sign of the larger units. Patch from Tom. - Document that age() adds days, then full months. - Add to TODO: "GLOBAL temporary tables to exist as empty by default in all sessions." - Remove http://www.benchmarkresources.com from the Developer FAQ, as it no longer resolves to a meaningful site. - Add CVS Wiki URL to docs. - Add to TODO: " Allow multiple indexes to be created concurrently, ideally via a single heap scan, and have a restore of a pg_dump somehow use it." - Update docs to mention that GNU tar versions >=1.16 exit with 1 on files changed, 2 on other errors. Neil Conway committed: - Implement CREATE TABLE LIKE ... INCLUDING INDEXES. Patch from NikhilS, based in part on an earlier patch from Trevor Hardcastle, and reviewed by myself. - With the native compiler on Unixware, disable optimization if --enable-debug is used, to avoid complaints about debugging and optimization being mutually exclusive. Patch from Stefan Kaltenbrunner. Magnus Hagander committed: - Added documentation for GSSAPI. - In pgsql/contrib/pg_standby/pg_standby.c, quote pathnames so pg_standby works with paths that have spaces in them. Patch from ISHIDA Akio. Tom Lane committed: - Fix pgsql/src/backend/utils/error/elog.c to avoid infinite recursion (leading to backend crash) when log_min_error_statement is active and there is some problem in logging the current query string; for example, that it's too long to include in the log message without running out of memory. This problem has existed since the log_min_error_statement feature was introduced. No doubt the reason it wasn't detected long ago is that 8.2 is the first release that defaults log_min_error_statement to less than PANIC level. Per report from Bill Moran. - Provide a bit more high-level documentation for the GEQO planner. Per request from Luca Ferrari. - Fix WAL replay of truncate operations to cope with the possibility that the truncated relation was deleted later in the WAL sequence. Since replay normally auto-creates a relation upon its first reference by a WAL log entry, failure is seen only if the truncate entry happens to be the first reference after the checkpoint we're restarting from; which is a pretty unusual case but of course not impossible. Fix by making truncate entries auto-create like the other ones do. Per report and test case from Dharmendra Goyal. - In pgsql/src/backend/utils/error/elog.c, on second thought, the tests for what to do with stderr output are a lot more sensible if we check the chunk-output case first. Not back-patched since it's just a cosmetic improvement. - Make replace(), split_part(), and string_to_array() behave somewhat sanely when handed an invalidly-encoded pattern. The previous coding could get into an infinite loop if pg_mb2wchar_with_len() returned a zero-length string after we'd tested for nonempty pattern; which is exactly what it will do if the string consists only of an incomplete multibyte character. This led to either an out-of-memory error or a backend crash depending on platform. Per report from Wiktor Wodecki. - Adjust configure script to print the bison and flex versions in use. Minor rearrangements to make a few tests in a more logical order. - Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizing a MIN or MAX aggregate call into an indexscan: the initplan is being made at the current query nesting level and so we shouldn't increment query_level. Though usually harmless, this mistake could lead to bogus "plan should not reference subplan's variable" failures on complex queries. Per bug report from David Sanchez i Gregori. - Fix incorrect optimization of foreign-key checks. When an UPDATE on the referencing table does not change the tuple's FK column(s), we don't bother to check the PK table since the constraint was presumably already valid. However, the check is still necessary if the tuple was inserted by our own transaction, since in that case the INSERT trigger will conclude it need not make the check (since its version of the tuple has been deleted). We got this right for simple cases, but not when the insert and update are in different subtransactions of the current top-level transaction; in such cases the FK check would never be made at all. (Hence, problem dates back to 8.0 when subtransactions were added --- it's actually the subtransaction version of a bug fixed in 7.3.5.) Fix, and add regression test cases. Report and fix by Affan Salman. - In pgsql/src/backend/nodes/outfuncs.c, fix outfuncs.c to dump A_Const nodes representing NULLs correctly. This has been broken since forever, but was not noticed because people seldom look at raw parse trees. AFAIK, no impact on users except that debug_print_parse might fail; but patch it all the way back anyway. Per report from Jeff Ross. - In pgsql/contrib/pg_buffercache/pg_buffercache_pages.c, fix pg_buffercache to release buffer partition locks in reverse order, and add a note about why. This is not tremendously important right now, probably, but it will get more urgent if NUM_BUFFER_PARTITIONS is increased as much as proposed. - In pgsql/src/backend/storage/lmgr, add comments spelling out why it's a good idea to release multiple partition locks in reverse order. - Allow plpgsql function parameter names to be qualified with the function's name. With this patch, it is always possible for the user to qualify a plpgsql variable name if needed to avoid ambiguity. While there is much more work to be done in this area, this simple change removes one unnecessary incompatibility with Oracle. Per discussion. - In pgsql/src/include/storage/s_lock.h (AIX section): Hmm, so evidently _check_lock and _clear_lock take an argument of type int not unsigned int. Third try to get grebe building without warnings... - In pgsql/src/include/storage/s_lock.h (AIX section) so our reward for including <sys/atomic_op.h> seems to be a bunch of nattering about casting away volatile. Losers. - On AIX, include <sys/atomic_op.h> so that the functions we use for TAS support are properly declared. == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == Simon Riggs sent in three new revisions of his async commit patch. Magnus Hagander sent in two copies of his SSPI authentication patch for libpq. Andrew Dunstan sent in another version of his COPYable log patch.
В списке pgsql-announce по дате отправления:
Предыдущее
От: Chander GanesanДата:
Сообщение: Open Technology Group, Inc. Announces Significant Updates to Performance Tuning Courses