== PostgreSQL Weekly News - February 04 2007 ==

From: David Fetter <david(at)fetter(dot)org>
To: PostgreSQL Announce <pgsql-announce(at)postgresql(dot)org>
Subject: == PostgreSQL Weekly News - February 04 2007 ==
Date: 2007-02-05 04:09:03
Message-ID: 20070205040903.GB17352@fetter.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pdxpug pgsql-announce

== PostgreSQL Weekly News - February 04 2007 ==

Security updates 8.2.2, 8.1.7, 8.0.11, 7.4.16 and 7.3.18 will be out
tomorrow, February 5, 2007. Get ready to upgrade!

== PostgreSQL Product News ==

PGCon, The PostgreSQL Conference, is looking for leading companies to
help sponsor this event. Details at
http://www.pgcon.org/2007/sponsorship.php

Red Hat has released their application stack with PostgreSQL
http://www.redhat.com/solutions/rhappstack/

== PostgreSQL Jobs for February ==

http://archives.postgresql.org/pgsql-jobs/2007-02/threads.php

== PostgreSQL Local ==

Major contributor Gavin Sherry and Postgres-R's lead Markus will be
speaking February 6th at 7:00pm at the SFPUG meeting in San Francisco
at Hyperic LLC's headquarters. RSVP at the URL below to get free Thai
food.
http://postgresql.meetup.com/1/calendar/5380885/

There will be a PostgreSQL booth at Scale 5x in Los Angeles February
10-11 at the Westin Los Angeles Airport. Contact josh AT agliodbs DOT
com if you haven't already to participate.
http://www.socallinuxexpo.org/scale5x/

There will be a PostgreSQL booth at CLT on March 3 and 4 in Chemnitz,
Germany. Some of the usual suspects from the German-speaking PostgreSQL
communities will be there. Contact info(at)pgug(dot)de to participate.
http://chemnitzer.linux-tage.de/2007/info/

There will be a PostgreSQL booth at FOSDEM on February 24 and 25 in
Brussels, Belgium. Many of the usual suspects from the EU PostgreSQL
communities will be there. Contact de(at)postgresql(dot)org to participate.
http://www.fosdem.org/2007/

The Italian PostgreSQL community is looking for sponsors for its
PostgreSQL day in Prato, Italy this summer. Check the link below
to participate.
http://www.pgday.it

== 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
and Devrim GUNDUZ

To get your submission into the upcoming issue, get it to
david(at)fetter(dot)org by Sunday at 3:00pm Pacific Time.

== Applied Patches ==

Michael Meskes committed:

- Magnus Hagander's patch which removes some compiler warnings.

- Cleaned up va_list handling in ecpg. This should now work on all
archs.

Neil Conway committed:

- Magnus Hagander's patch which changes the installscript for vcbuild
actually to parse the generated solution files for what to install,
instead of blindly copying everything as it previously did. For
example, in the previous quick-n-dirty version, it would copy old
DLLs if you reconfigured in a way that didn't include subprojects
like a PL.

- Reword suggestion that libpq.dll be installed in WINNT\SYSTEM32
under Windows. Per Magnus Hagander, this is not recommended.

- Fix two more regression tests whose expected outputs were not
updated for the recent may/might cleanup.

- Update some of the "expected" regression test results for Bruce's
recent may/might cleanup, in the hopes that this will unbreak the
buildfarm. Per report from Stefan Kaltenbrunner.

- Backpatch last night's fix for broken markup to the 8.2 branch.

- Fix broken markup in pgsql/doc/src/sgml/release.sgml

- This patch adds documentation for the long-version parameters
--username and --password for pg_dump, pg_dumpall and pg_restore,
per complaint by Michael Schmidt. Patch from Magnus Hagander.

- Fix a few typos in comments in GiN.

- Add missing Makefile dependencies for the "bigtest" and "bigcheck"
targets, and refactor the tablespace setup code into a separate
Makefile target.

- Rewrite uuid input and output routines to avoid dependency on the
nonportable "hh" sprintf(3) length modifier. Instead, do the parsing
and output by hand. The code to do this isn't ideal, but this is an
interim measure anyway: the uuid type should probably use the
in-memory struct layout specified by RFC 4122. For now, this patch
should hopefully rectify the buildfarm failures for the uuid test.
Along the way, re-add pg_cast entries for uuid <-> varchar, which I
mistakenly removed earlier, and bump the catversion.

Teodor Sigaev committed:

- Revert gincostestimate changes.

- Update FreeBSD DocBook installation notes.

- Allow GIN's extractQuery method to signal that nothing can satisfy
the query. In this case extractQuery should returns -1 as nentries.
This changes prototype of extractQuery method to use int32* instead
of uint32* for nentries argument. Based on that gincostestimate may
see two corner cases: nothing will be found or seqscan should be
used. Per proposal at
http://archives.postgresql.org/pgsql-hackers/2007-01/msg01581.php

Tom Lane committed:

- Don't MAXALIGN in the checks to decide whether a tuple is over
TOAST's threshold for tuple length. On 4-byte-MAXALIGN machines,
the toast code creates tuples that have t_len exactly
TOAST_TUPLE_THRESHOLD ... but this number is not itself maxaligned,
so if heap_insert maxaligns t_len before comparing to
TOAST_TUPLE_THRESHOLD, it'll uselessly recurse back to tuptoaster.c,
wasting cycles. (It turns out that this does not happen on
8-byte-MAXALIGN machines, because for them the outer MAXALIGN in the
TOAST_MAX_CHUNK_SIZE macro reduces TOAST_MAX_CHUNK_SIZE so that
toast tuples will be less than TOAST_TUPLE_THRESHOLD in size. That
MAXALIGN is really incorrect, but we can't remove it now, see
below.) There isn't any particular value in maxaligning before
comparing to the thresholds, so just don't do that, which saves a
small number of cycles in itself. These numbers should be
rejiggered to minimize wasted space on toast-relation pages, but we
can't do that in the back branches because changing
TOAST_MAX_CHUNK_SIZE would force an initdb (by changing the contents
of toast tables). We can move the toast decision thresholds a bit,
though, which is what this patch effectively does. Thanks to Pavan
Deolasee for discovering the unintended recursion. Back-patch into
8.2, but not further, pending more testing. (HEAD is about to get a
further patch modifying the thresholds, so it won't help much for
testing this form of the patch.)

- Use -Wl for linker switches on freebsd --- back-port of an 8.0
change. I think this will make buildfarm member herring go green in
this branch.

- Fix typo in pgsql/doc/src/sgml/sources.sgml

- Fix plpgsql so that when a local variable has no initial-value
expression, an error will be thrown correctly if the variable is of
a NOT NULL domain. Report and almost-correct fix from Sergiy
Vyshnevetskiy (bug #2948).

- Fix initdb to not generate misleading error messages when
postgres.bki or other share-directory files are inaccessible for
some reason other than not existing. Inspired by trouble report
from Simon Kinsella.

- Repair oversights in the mechanism used to store compiled plpgsql
functions. The original coding failed (tried to access deallocated
memory) if there were two active call sites (fn_extra pointers) for
the same function and the function definition was updated. Also, if
an update of a recursive function was detected upon nested entry to
the function, the existing compiled version was summarily
deallocated, resulting in crash upon return to the outer instance.
Problem observed while studying a bug report from Sergiy
Vyshnevetskiy. Bug does not exist before 8.1 since older versions
just leaked the memory of obsoleted compiled functions, rather than
trying to reclaim it.

- Add SPI_push/SPI_pop calls so that datatype input and output
functions called by plpgsql can themselves use SPI --- possibly
indirectly, as in the case of domain_in() invoking plpgsql functions
in a domain check constraint. Per bug #2945 from Sergiy
Vyshnevetskiy. Somewhat arbitrarily, I've chosen to back-patch this
as far as 8.0. Given the lack of prior complaints, it doesn't seem
critical for 7.x.

- Add support for cross-type hashing in hash index searches and hash
joins. Hashing for aggregation purposes still needs work, so it's
not time to mark any cross-type operators as hashable for general
use, but these cases work if the operators are so marked by hand in
the system catalogs.

- Add comment noting that hashm_procid in a hash index's metapage
isn't actually used for anything.

Bruce Momjian committed:

- Add to TODO: "Allow custom variable classes that can restrict who
can set the values" http://archives.postgresql.org/pgsql-hackers/2006-11/msg00911.php

- Update wording in pgsql/doc/src/sgml/libpq.sgml on how to set an
environment variable on Windows.

- Add documentation for Windows on how to set an environment variable.
Backpatch to 8.2.X.

- In pgsql/src/backend/commands/vacuumlazy.c, change vacuum lazy
"compacting" warning message to: errhint("Consider using VACUUM FULL
on this relation or increasing the configuration parameter
+\"max_fsm_pages\".")));

- Update URL for the "Allow sequential scans to take advantage of
other concurrent sequential scans, also called 'Synchronised
Scanning'" TODO.

- Add to TODO: "Add \# to list command history like \s, but with line
numbers" http://archives.postgresql.org/pgsql-hackers/2006-12/msg00255.php

- Add URLs to the "Allow sequential scans to take advantage of other
concurrent sequential scans, also called 'Synchronised Scanning'"
TODO.

- Document that a client-only install using "gmake -C src/bin install"
does install a few server-only binaries.

- Add to TODO: "Allow recovery.conf to allow the same syntax as
postgresql.conf, including quoting."

- Albe Laurenz's patch which fixes configure detection code when using
both --with-ldap and --enable-thread-safety.

- Add -patches URL for the "Reduce checkpoint performance degredation
by forcing data to disk more evenly" TODO item.

- Add URL for the "Allow sequential scans to take advantage of other
concurrent sequential scans, also called 'Synchronised Scanning'"
TODO item.

- Add to TODO: "Reduce checkpoint performance degredation by forcing
data to disk more evenly" with associated URLs.

- Add URL for the "Fix RENAME to work on variables other than OLD/NEW"
TODO item.

- Add to TODO: "Allow column display reordering by recording a
display, storage, and permanent id for every column?"

- In pgsql/doc/src/sgml/sources.sgml, add "May/Can/Might" section to
error message style guidlines, and a "can't" -> "cannot" section.

- In pgsql/doc/src/sgml/high-availability.sgml, mention file system
replication as a high availability solution in the shared hardware
section, and mention DRBD as a popular solution.

- Add URL to the "Add long file support for binary pg_dump output"
TODO item.

- Wording cleanup for error messages. Also change can't -> cannot.

- Add 8.2.0 "Incomatibilities" documentation that pg_dump's -n and -t
behavior has changed.

- Backpatch FAQs to stable branch.

- Daojing Zhou's update to the Chinese FAQ.

- In TODO, update URL for function permission checks.

- Add to TODO: "Tighten function permission checks."

- Add to TODO: "Tighten trigger permission checks."

- Add to TODO: Fix problem when multiple subtransactions of the same
outer transaction hold different types of locks, and one
subtransaction aborts.

- Update CREATE SEQUENCE documentation to show the same sequence being
created and increments. The old docs created the sequence, then
showed a nextval() of 114.

- In TODO, add URL for, "Fix RENAME to work on variables other than
OLD/NEW."

- Use colons consistently before '<programlisting>' blocks, where
appropriate.

- Revert error message change for may/can/might --- needs discussion.

- Update documentation on may/can/might.

- Add to TODO, in "Fix RENAME to work on variables other than
OLD/NEW", add URL.

- Document need for periodic REINDEX in VACUUM FULL cases.

- In pgsql/doc/src/sgml/array.sgml, add missing colon.

- Add to TODO: "Add REINDEX CONCURRENTLY" with caveats.

- Update TODO for VACUUM FULL by adding a mention that index updates
can bloat the index.

- Added to TODO: "ARRAY[[1,2],[3,4]])[1] should return the same values
as ARRAY[[1,2],[3,4]])[1:1]"

- Add FAQ item about timezones and daylight savings time.

- Update documentation for backslashes to mention escape string syntax
more, and standard_conforming_strings less, because in the future
non-E strings will not treat backslashes specially. Also use E''
strings where backslashes are used in examples. (The existing
examples would have drawn warnings.) Backpatch to 8.2.X.

- Clarify paramater handling for pg_get_serial_sequence().

- Update documentation for pg_get_serial_sequence() function.

- Update wording for minor release upgrades, per Alvaro Herrera.

- In TODO, mark as done: "Add Globally/Universally Unique Identifier
(GUID/UUID)"

- In pgsql/src/port/exec.c, use sizeof() for snprintf() buffer length.

- Update process termination message to display signal number and name
from exec.c and postmaster.c.

Peter Eisentraut committed:

- Update SQL conformance information about XML features.

- Implement XMLSERIALIZE for real. Analogously, make the xml to text
cast observe the xmloption. Reorganize the representation of the
XML option in the parse tree and the API to make it easier to manage
and understand. Add regression tests for parsing back XML
expressions.

- Translation updates

- Update documentation on XML functions

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Magnus Hagander sent in a patch which adds documentation for the
long-version parameters --username and --password for pg_dump,
pg_dumpall and pg_restore, per complaint by Michael Schmidt.

Pavan Deolasee sent in another version of his performance patch.

Pursuant to Alvaro Herrera's work in progress autovacuum launcher
patch, Markus Schiltknecht sent in a patch to find current imessages.

Korry Douglas sent in a patch to fix the fixes shared_preload_libraries
on Windows hosts. It forces each backend to re-load all
shared_preload_libraries. Per discussion below:
http://archives.postgresql.org/pgsql-hackers/2007-01/msg01498.php

Heikki Linnakangas sent in another version of his phantom command ids
patch.

Pavan Deolasee sent in a patch which adds the matrix of lock
(in)compatibilies to the source code.

Korry Douglas sent in a patch which lets gprof nab a non-overwritten
profile on Linux.

Koichi Suzuki sent in a patch intended to improve full-page write
performance.

Jeremy Drake sent in a patch which allows regular expression matches
to return an array of matches, along with (optionally) the whole
match, the pre-match, and the post-match. Perl fans, rejoice!

ITAGAKI Takahiro sent in a new version of his n_dead_tuples patch.

Markus Schiltknecht sent in a patch which fixes a small "database is
ready" race condition in StartupXLOG() in xact.c.

Andrew Dunstan sent in a patch which fixes the "\copy (query)
delimiter" syntax error.

Pavel Stehule sent in a patch which fixes a localization bug in time
zone formatting.

Responses

Browse pdxpug by date

  From Date Subject
Next Message Josh Berkus 2007-02-05 17:32:44 PostgreSQL security update available now
Previous Message Selena Deckelmann 2007-01-31 21:00:09 Re: next meeting about DOMAINs, and last night's meeting report

Browse pgsql-announce by date

  From Date Subject
Next Message Josh Berkus 2007-02-05 17:32:44 PostgreSQL security update available now
Previous Message Gabriele Bartolini 2007-02-04 21:30:08 ht://Miner version 0.5.0 (beta) released