== PostgreSQL Weekly News - February 04 2007 == - Mailing list pgsql-announce

From David Fetter
Subject == PostgreSQL Weekly News - February 04 2007 ==
Date
Msg-id 20070205040903.GB17352@fetter.org
Whole thread Raw
List 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@pgug.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@postgresql.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@fetter.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.



---------------------------(end of broadcast)---------------------------
-To unsubscribe from this list, send an email to:

               pgsql-announce-unsubscribe@postgresql.org

pgsql-announce by date:

Previous
From: Richard Troy
Date:
Subject: ...Yes, OUR Jim Gray is missing....
Next
From: Josh Berkus
Date:
Subject: PostgreSQL security update available now