== PostgreSQL Weekly News - September 07 2008 == 8.4 CVS Snapshot RPMs are ready for testing. http://people.planetpostgresql.org/devrim/index.php?/archives/121-Testers-8.4-snapshot-RPMs-are-available.html
September CommitFest has begun! Interesting inew tems being reviewed include: column-level permissions, hash indexing, windowing functions, in-place upgrade and others. http://wiki.postgresql.org/wiki/CommitFest:2008-09 What you can do: http://wiki.postgresql.org/wiki/Reviewing_a_Patch We also desperately need patch reviewers! Are you good with C code? Are you familiar with PostgreSQL? Do you want to advance your Postgres hacking skills and achieve fortune, fame and glory? Become a reviewer for PostgreSQL patches! Contact [EMAIL PROTECTED] == PostgreSQL Product News == Continuent Tungsten released: http://www.continuent.com/index.php?option=com_content&task=view&id=412&Itemid=88 Once:Radix PostgreSQL GUI Development goes 1.0: http://www.oncetechnologies.com/newonceradix/news.html pglesslog 1.1 beta released. http://pgfoundry.org/projects/pglesslog/ PL/Proxy 2.0.6 released. http://pgfoundry.org/projects/plproxy/ == PostgreSQL Local == Stefan Kaltenbrunner is giving a talk about monitoring strategies for postgresql.org at the Nagios conference 2008 September 11-12 in Nuremberg, Germany. http://www.netways.de/nagios_konferenz/y2008/programm/v/postgresql_monitoring/ Selena Deckelmann and Gabrielle Roth will be giving a presentation on filesystem performance for PostgreSQL at the Linux Plumbers' Conference. http://linuxplumbersconf.org/program/speakers/getspeaker.php?speaker=mwong.txt PDXPUG will meet September 18. Tom Raney will talk about his Visual Planner tool. http://pugs.postgresql.org/node/468 The Prato Linux User Group is having PostgreSQL talks in September. Schedule: http://www.prato.linux.it/serate_a_tema_2008 PGCon Brazil 2008 will be on September 26-27 at Unicamp in Campinas. http://pgcon.postgresql.org.br/index.en.html Registration: http://pgcon.postgresql.org.br/inscricoes.en.html PgDay.fr will be October 4 in Toulouse. The Call for Papers is open: http://www.postgresqlfr.org/?q=node/1686 Registration: http://www.pgday.fr/doku.php/inscription The Highload++ conference will be October 6-8 in Moscow, Russia. Gavin Roy, Asko Oja and Maxim Boguk will talk about things PostgreSQL. http://highload.ru PostgreSQL Conference West 2008 will be October 10-12 at Portland State University in Portland, Oregon. http://www.postgresqlconference.org/ Talk submission at: http://www.postgresqlconference.org/west08/talk_submission/ PGDay.(IT|EU) 2008 will be October 17 and 18 in Prato. Registration will open soon. http://www.pgday.org/en/ PostgreSQL has a table at LinuxLive, Olympia, London, UK on 23-25 October, 2008. Write to Dave Page to participate. dpage AT pgamin DOT org == PostgreSQL in the News == Planet PostgreSQL: http://www.planetpostgresql.org/ PostgreSQL Weekly News is brought to you this week by David Fetter, Josh Berkus, Selena Deckelmann, Devrim GUNDUZ and Nikolay Samokhvalov. Submit news and announcements by Sunday at 3:00pm Pacific time. Please send English language ones to [EMAIL PROTECTED], German language to [EMAIL PROTECTED], Italian language to [EMAIL PROTECTED] == Applied Patches == Peter Eisentraut committed: - Synchronize the shared object build rules in Makefile.port with Makefile.shlib somewhat by adding CFLAGS where the compiler is used and Makefile.shlib already used CFLAGS. - Add DSSSL stylesheet location for Mac OS X/Fink installation. - Code coverage testing with gcov. Documentation is in the regression test chapter. Michelle Caisse - Check for gcov and lcov only when coverage testing is enabled. Heikki Linnakangas committed: - In pgsql/src/backend/utils/time/combocid.c, HeapTupleHeaderAdjustCmax made the incorrect assumption that the raw command id is the cmin, when it can in fact be a combo cid. That made rows incorrectly invisible to a transaction where a tuple was deleted by multiple aborted subtransactions. Report and patch Karl Schnaitter. Back-patch to 8.3, where combo cids was introduced. Tom Lane committed: - Add a bunch of new error location reports to parse-analysis error messages. There are still some weak spots around JOIN USING and relation alias lists, but most errors reported within backend/parser/ now have locations. - Add a variant expected-output file for the sequence regression test, to cover output that is seen when a checkpoint occurs at just the right time during the test. Per my report of 2008-08-31. This could be back-patched but I'm not sure it's worth the trouble. - Sigh, I missed checking the ecpg tests ... - Fix plpgsql's exec_move_row() to supply valid type OIDs to exec_assign_value() whenever possible, as per bug report from Oleg Serov. While at it, reorder the operations in the RECORD case to avoid possible palloc failure while the variable update is only partly complete. Back-patch as far as 8.1. Although the code of the particular function is similar in 8.0, 8.0's support for composite fields in rows is sufficiently broken elsewhere that it doesn't seem worth fixing this. - Prevent memory leaks in our various bison parsers when an error occurs during parsing. Formerly the parser's stack was allocated with malloc and so wouldn't be reclaimed; this patch makes it use palloc instead, so that flushing the current context will reclaim the memory. Per Marko Kreen. - If a loadable module has wrong values in its magic block, spell out exactly what they are in the complaint message. Marko Kreen, some editorialization by me. - Add some additional casts and regression tests for the citext data type. David Wheeler - Fix an oversight in the 8.2 patch that improved mergejoin performance by inserting a materialize node above an inner-side sort node, when the sort is expected to spill to disk. (The materialize protects the sort from having to support mark/restore, allowing it to do its final merge pass on-the-fly.) We neglected to teach cost_mergejoin about that hack, so it was failing to include the materialize's costs in the estimated cost of the mergejoin. The materialize's costs are generally going to be pretty negligible in comparison to the sort's, so this is only a small error and probably not worth back-patching; but it's still wrong. In the similar case where a materialize is inserted to protect an inner-side node that can't do mark/restore at all, it's still true that the materialize should not spill to disk, and so we should cost it cheaply rather than expensively. Noted while thinking about a question from Tom Raney. - Implement a psql command "\ef" to edit the definition of a function. In support of that, create a backend function pg_get_functiondef(). The psql command is functional but maybe a bit rough around the edges... Abhijit Menon-Sen - Adjust psql's new \ef command to present an empty CREATE FUNCTION template for editing if no function name is specified. This seems a much cleaner way to offer that functionality than the original patch had. In passing, de-clutter the error displays that are given for a bogus function-name argument, and standardize on "$function$" as the default delimiter for the function body. (The original coding would use the shortest possible dollar-quote delimiter, which seems to create unnecessarily high risk of later conflicts with the user-modified function body.) - In pgsql/doc/src/sgml/sources.sgml, add a few more details in the source-code-formatting documentation. This isn't exhaustive but it covers some of the more common layout mistakes I've seen in submitted patches. - In pgsql/src/backend/utils/adt/varlena.c, reimplement text_position and related functions to use Boyer-Moore-Horspool searching instead of naive matching. In the worst case this has the same O(M*N) complexity as the naive method, but the worst case is hard to hit, and the average case is very fast, especially with longer patterns. David Rowley. - In pgsql/doc/src/sgml/ref/pg_restore.sgml, clarify description of pg_restore's handling of large objects. - Support set-returning functions in the target lists of Agg and Group plan nodes. This is a pretty ugly feature but since we don't yet have a plausible substitute, we'd better support it everywhere. Per gripe from Jeff Davis. - Create a separate grantable privilege for TRUNCATE, rather than having it be always owner-only. The TRUNCATE privilege works identically to the DELETE privilege so far as interactions with the rest of the system go. Robert Haas Teodor Sigaev committed: - In GIN, fix strategy propagation to scanEntry for partial match by moving propagation to initializaion of scanEntry. Bruce Momjian committed: - Add Win32 MSVC code to support this recent patch: "Add missing descriptions for aggregates, functions and conversions." Bernd Helmle - In pgsql/src/bin/pg_dump/pg_backup_archiver.c, add comment about why pg_dump doesn't dump the public schema comment. - In pgsql/doc/src/sgml/func.sgml, clarify documention workding for xip_list(). == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == Marko Kreen sent in a patch to make GUC variable parsing case insensitive. Stephen Frost sent in two revisions of a patch to add column-level privileges. Alvaro Herrera sent in a revised version of Greg Smith's patch to add source file and line to GUC variables to pg_settings. Alvaro Herrera sent in a revised version of Andrew Chernow's patch to add libpq object hooks. Ryan Bradetich sent in a patch to align tuples more efficiently on database pages. Andrew Chernow sent in five revisions of his libpq events patch. David Rowley sent in a patch to make string-matching operations use Boyer-Moore search. Brendan Jurd sent in a patch to add pg_typeof(). Robert Haas sent in another revision of his patch to add a TRUNCATE permission. Zdenek Kotala sent in another revision of his in-place upgrade patch. Volkan YAZICI sent in five revisions of a patch to increase the verbosity of return type checks in PL/PgSQL. ---------------------------(end of broadcast)--------------------------- -To unsubscribe from this list, send an email to: [EMAIL PROTECTED]