Skip to content

Wöchentlicher PostgreSQL Newsletter - 06. Februar 2011

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 06. Februar 2011 ==

Interview mit Simon Riggs bei O'Reilly GMT

== PostgreSQL Produkt Neuigkeiten ==

PGSI 1.6.0, ein Werkzeug das den Gesamteinfluß von PostgreSQL Anfragen
auf einem Server misst, ist erschienen:

== PostgreSQL Jobs im Februar ==

== PostgreSQL Lokal ==

Selena Deckelmann wird über die Entwicklung der PostgreSQL
Community am 7. Februar 2010 um 16 Uhr an der Oregon State
University in Corvallis, OR sprechen.

Der vierte jährliche Prager PostgreSQL Development Day findet
am 10. Februar 2011 an der Charles Universität in Prag statt.

NYPUG trifft sich am 15. Februar 2011 um 18:15 Uhr im Yodle Office,
50 W 23rd St, New York, NY. Menr Informationen und Anmeldung unter:

PGDay findet dieses Jahr während der südkalifornischen Linux Ausstellung
(SCALE) im LAX Hilton Hotel in Los Angeles, Kalifornien am Freitag dem
25. Februar 2011 statt. Vorträge kannst du unter pgday-submissions AT
googlegroups DOT com einreichen.

PostgreSQL Conference East 2011: New York,
vom 22. bis 25. März

Das Open Database Camp findet vom 7. bis 9. Mai 2011 in Sardinien,
Italien statt.

PGCon findet am 19. und 20. Mai 2011 an der Universität
von Ottawa statt, vorher gibt es am 17. und 18. Mai
zwei Tage mit Trainings. Der Call for Papers ist offen.

== PostgreSQL in den News ==

Planet PostgreSQL:

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David Fetter.

Sende Neuigkeiten und Ankündigungen bis Sonntag, 15 Uhr Pazifischer
Zeit. Bitte sende englische Beiträge an, deutsche an, italienische an, spanische an

== Reviews ==

== Angewandte Patches ==

Heikki Linnakangas pushed:

- Support multiple concurrent pg_basebackup backups.  With this patch,
  pg_basebackup doesn't write a backup_label file in the data
  directory, so it doesn't interfere with a pg_start/stop_backup()
  based backup anymore. backup_label is still included in the backup,
  but it is injected directly into the tar stream.  Heikki
  Linnakangas, reviewed by Fujii Masao and Magnus Hagander.;a=commitdiff;h=997b48ed96c476650f87ca75d65c9fc1f6273f5a

- Fix typo.;a=commitdiff;h=32866837f005fcfdd1e1289f08a89a7c519da000

- Remove spurious word, spotted by Thom Brown.;a=commitdiff;h=44df84df72b5eb43384bc7288713c2f80db7273d

Bruce Momjian pushed:

- Move upgrade instructions into its own section under "Server Setup
  and Operation", merged from upgrade sections in "Installation from
  Source Code" and "Backup and Restore".  This now gives a single
  place for all upgrade information.;a=commitdiff;h=c5ba11f8fb1701441b96a755ea410b96bfe36170

- Fix SGML markup for upgrade doc addition.;a=commitdiff;h=ff20fbd6c21929cd5c78f154c8364ce746de9c03

- Update pg_upgrade docs to mention its use in a less risk-warning
  way, and update the pg_upgrade docs to mention its reliance on no
  changes to the storage format (the later based on Robert Haas's

- Fix pg_upgrade to create pg_authid restore functions in the
  'postgres' database, not in the os-user database, per report from

- In pg_authid.rolpassword docs, make "md5" appear as a literal.;a=commitdiff;h=2dbed56c5a86d45a66f41e6a8a16295bbfe46646

- Improve docs for pg_authid encryption description with better markup
  and a mention of unencrypted passwords.;a=commitdiff;h=00dd340210ed67900e03703eb088fdd5ab12c099

- Add pg_upgrade comment for why we can't use template1 inheritance
  for the support functions.;a=commitdiff;h=2bb87a61a84ab74b7ba820aac787443a78897bf4

- Add missing period "." in pg_upgrade documentation.;a=commitdiff;h=d2888d1ca36c266900eeea95401269c782074251

- Clarify pg_upgrade install instructions, per suggestion from Robert Haas.;a=commitdiff;h=902aae5ec58f71b8d9f7efb5ed474d0f5439439d

- Document that Slony can do upgrades easier because it supports
  replication between different Postgres major versions.;a=commitdiff;h=e8cdc238cfa3fda4185fe6a9826dbdf0a107f789

- Document that effective cache size does not assume data remains in
  the cache between queries.;a=commitdiff;h=6c6e6f7fd3ffa984a202b910ef3237e26f9d3c2e

- Clarify documentation to state that "zero_damaged_pages" does not
  force data to disk, so the table or index should be recreated before
  the parameter is turned off again.;a=commitdiff;h=7106f74e2a6feb31c022dd98e7d93ab656dc079d

- Properly capitalize hyphenated words in documentation titles.;a=commitdiff;h=d56d246e70184692408cd6a444e6824ae8491587

- Document that CREATE VIEW that uses "*" for the column list will not
  auto-add columns later added to the base table.;a=commitdiff;h=5a6ba62be5364dbf973fd9b8631fd60acda03440

- Simplify pg_upgrade checking of executable permissions.;a=commitdiff;h=9d220fc17eafcbc99fcea7bdbbb246fee473eac7

- Fix wrong verb in pg_upgrade text message, per Robert Haas.;a=commitdiff;h=2b6e2dee7805ec5b477af00c01c54c208bf106eb

- Mark all GUC variables with <varname> markup, rather than <literal>.;a=commitdiff;h=03c25dd900d97c0868ad20b925a78d41ec603578

- Clearify macro IS_PATH_VAR_SEP in path.c so it is clear this is a
  path variable, not a directory path.;a=commitdiff;h=bffb638d16999ee7d3c8796e77dd87ac82719c7d

- Rename function to first_path_var_separator() to clarify it works
  with path variables, not directory paths.;a=commitdiff;h=426227850be145b52cb610455000fc005df5ce4e

- Simplify code used in is_absolute_path() macro;  also add comment
  about 'E:abc' Win32 path handling.;a=commitdiff;h=35b0a6b205c25d592b966aa17d3c6f9e5a88eb62

- In docs, PL is Procedural Language, not Programming Language.
  Satoshi Nagayasu.;a=commitdiff;h=df63aac678343cec522bc58588b70ab1374a6c93

- ALTER TABLE sometimes takes only ShareUpdateExclusiveLock.  Along
  the way, be more consistent about the wording we use here.;a=commitdiff;h=7212c77d0cabcc468fec0b9cd7f2413b64b77050

- In docs, move PQrequestCancel() deprecation mention up to match
  other libpq doc mentions.;a=commitdiff;h=b157a1d5554d6dfbd13fb605f08d51ce17532375

- Add doc comment that installation.sgml can't use xrefs.;a=commitdiff;h=8e6ae3d79c16ad8876c34f2cff8d667ca1cffb09

- Add C comment about why older compilers complain about
  basebackup.c's longjump.;a=commitdiff;h=51dbc87dff5c32bfe627ec7b22c575c263de8251

- Rename macro DECIMAL to DECIMAL_T to help pgindent;  this is already
  done for a few other macros in that file, for other reasons.  I also
  remove pgindent/README mention of the file.;a=commitdiff;h=97116ca4170b974d734cea364789c389b30e6ce1

- Adjust libpq docs to be clearer about 'hostaddr' usage by rewording
  and using an itemized list.;a=commitdiff;h=5ed45ac09c604555740e7365a722b641f3bce498

Andrew Dunstan pushed:

- Update docs on building for Windows to accomodate current reality.
  Document how to build 64 bit Windows binaries using the MinGW64 tool
  set.  Remove recommendation against using Mingw as a build platform.
  Be more specific about when Cygwin is useful and when it's not,  in
  particular note its usefulness for running psql, and add a note
  about building on Cygwin in non-C locales.  Per recent discussions.;a=commitdiff;h=51be78b09a83b8d533e4a9f81cf9a7f2edde6654

- Set up PLPerl trigger data using C code instead of Perl code.  This
  is an efficiency change, and means we now no longer have to run "out
  $_TD; local $_TD = shift;", which was especially pointless in the
  case of non-trigger functions where the passed value was always
  undef anyway.  A tiny open issue is whether we should get rid of the
  $prolog argument of mkfunc, and the corresponding pushed value,
  which is now just a constant "false".  Tim Bunce, reviewed by Alex

- Add  comment on why we're passing a useless 'false' to the plperl
  function compiler.  It's for compatibility with modules like

- Attempt to unbreak MSVC builds after pipe.c move.;a=commitdiff;h=895ad83d702ed821f72ec7bdf1fba3db7da9d9d7

- Force strings passed to and from plperl to be in UTF8 encoding.
  String are converted to UTF8 on the way into perl and to the
  database encoding on the way back. This avoids a number of observed
  anomalies, and ensures Perl a consistent view of the world.  Some
  minor code cleanups are also accomplished.  Alex Hunsaker, reviewed
  by Andy Colson.;a=commitdiff;h=50d89d422f9c68a52a6964e5468e8eb4f90b1d95

Simon Riggs pushed:

- Fix error code for canceling statement due to conflict with
  recovery.  All retryable conflict errors now have an error code that
  indicates that a retry is possible, correcting my incomplete fix of
  2010/05/12 Tatsuo Ishii and Simon Riggs, input from Robert Haas and
  Florian Pflug;a=commitdiff;h=8585ad36254199ca63700707ee78890da1755e4d

- Create new errcode for recovery conflict caused by db drop on
  master.  Previously reported as ERRCODE_ADMIN_SHUTDOWN, this case is
  now reported as ERRCODE_T_R_DATABASE_DROPPED. No message text
  change.  Unlikely to happen on most servers, so low impact change to
  allow session poolers to correctly handle this situation.  Tatsuo
  Ishii, edits by me, review by Robert Haas.;a=commitdiff;h=9e95c9ad558bafa26efbab50f77929de4ade5f90

- Re-classify ERRCODE_DATABASE_DROPPED to 57P04;a=commitdiff;h=56b21b7ae38bc1efb701e7ebfd208e2e194e7998

Tom Lane pushed:

- Prevent buffer overrun while parsing an integer in a "query_int"
  value.  contrib/intarray's gettoken() uses a fixed-size buffer to
  collect an integer's digits, and did not guard against overrunning
  the buffer.  This is at least a backend crash risk, and in principle
  might allow arbitrary code execution.  The code didn't check for
  overflow of the integer value either, which while not presenting a
  crash risk was still bad.  Thanks to Apple Inc's security team for
  reporting this issue and supplying the fix.  Security: CVE-2010-4015;a=commitdiff;h=7ccb6dc2d3e266a551827bb99179708580f72431

- Update release notes.  Security: CVE-2010-4015;a=commitdiff;h=43054624979de3205fbc432f15defd4b9d5922e9

- Support LIKE and ILIKE index searches via contrib/pg_trgm indexes.
  Unlike Btree-based LIKE optimization, this works for
  non-left-anchored search patterns.  The effectiveness of the search
  depends on how many trigrams can be extracted from the pattern.
  (The worst case, with no trigrams, degrades to a full-table scan, so
  this isn't a panacea.  But it can be very useful.) Alexander
  Korotkov, reviewed by Jan Urbanski.;a=commitdiff;h=6e2f3ae8842392c46ccc91a9ce4bba92296890cb

- Clean up missed change to plpython expected files.;a=commitdiff;h=907855ac759a221f95b502cd7cbf2ec851fe9523

- Repair multiple breakage in Windows-specific code for appending '.exe'.;a=commitdiff;h=cd7d748d51df3c5dedcc49a3603e6fa9c050f237

ITAGAKI Takahiro pushed:

- Add a link from client_encoding parameter to the list of character
  sets in documentation.  Thom Brown;a=commitdiff;h=03282bfa8973f3a77ca3e7c14847a5a11d07d6a2

- Fix wrong error reports in 'number of array dimensions exceeds the
  maximum allowed' messages, that have reported one-less dimensions.
  Alexey Klyukin;a=commitdiff;h=0c707aa4583a5584f4c3f4ad1697bb206ed0d65a

Magnus Hagander pushed:

- Undefine setlocale() macro on Win32.  New versions of libintl
  redefine setlocale() to a macro which causes problems when the
  backend and libintl are linked against different versions of the
  runtime, which is often the case in msvc builds.  Hiroshi Inoue,
  slightly updated comment by me;a=commitdiff;h=5273f2143416f6340f6ee876facfa6f7a87453a0

- Fix typo.  Thom Brown;a=commitdiff;h=f001cb38b67b0f2f5f4cfd1e32f86866da8c8693

- Include more status information in walsender results.  Add the
  current xlog insert location to the response of IDENTIFY_SYSTEM, and
  adds result sets containing start and stop location of backups to
  BASE_BACKUP responses.;a=commitdiff;h=76129e7f14b4605db0a046e13abef0e255ffe007

- Use single quotes when there are backslashes in the filename.  In
  the hope of unbreaking the buildfarm;a=commitdiff;h=39fbec73b0dd15df8955baad57685082ec0cef8f

- Attempt to un-break the documentation build again Another case of
  <xref linkend> in the documentation that builds INSTALL, which is
  not allowed.;a=commitdiff;h=afb6dee1e3b93af05e35873c19c068e8ac7eb74b

- IDENTIFY_SYSTEM now returns 3 fields, not 2;a=commitdiff;h=cedd6515ba68f46dd7e75a65d4c98330ced0ba7a

Peter Eisentraut pushed:

- Add validator to PL/Python.  Jan Urbański, reviewed by Hitoshi

- Wrap PL/Python SPI calls into subtransactions.  This allows the
  language-specific try/catch construct to catch and handle exceptions
  arising from SPI calls, matching the behavior of other PLs.  As an
  additional bonus you no longer get all the ugly "unrecognized error
  in PLy_spi_execute_query" errors.  Jan Urbański, reviewed by Steve

Robert Haas pushed:

- Log restartpoints in the same fashion as checkpoints.  Prior to 9.0,
  restartpoints never created, deleted, or recycled WAL files, but now
  they can.  This code makes log_checkpoints treat checkpoints and
  restartpoints symmetrically.  It also adjusts up the documentation
  of the parameter to mention restartpoints.  Fujii Masao.  Docs by
  me, as suggested by Itagaki Takahiro.;a=commitdiff;h=0af695fd43b6889613a4035e3cdfcc0fc1b7936a

- Various sepgsql corrections.  KaiGai Kohei;a=commitdiff;h=c7689ee73346d198177dee538501bb1148c8cebb

- Minor sepgsql regression test fixes.;a=commitdiff;h=87d967f70f4866c17404f6a9b8062f892ed31e08

- sepgsql doc fix.  KaiGai Kohei;a=commitdiff;h=4ff9dec1386b714f6c26a52ca6880b14e94dd1db

- Further sepgsql documentation cleanup.;a=commitdiff;h=4c4daf671074cc64290e9255c14365b55bf7a47b

- Avoid maintaining three separate copies of the error codes list.
  src/pl/plpgsql/src/plerrcodes.h, src/include/utils/errcodes.h, and a
  big chunk of errcodes.sgml are now automatically generated from a
  single file, src/backend/utils/errcodes.txt.  Jan Urbański, reviewed
  by Tom Lane.;a=commitdiff;h=ddfe26f6441c24660595c5efe5fd0bd3974cdc5c

- Preserve copyright notice from old errcodes.h file.;a=commitdiff;h=b8a0467e10a41d32ecf889d40de81223e0439c5b

- Unbreak the VPATH build.  My commit
  ddfe26f6441c24660595c5efe5fd0bd3974cdc5c of 2010-02-03 broke it.
  Per buildfarm.;a=commitdiff;h=dde9684d65ed66656f765d3fd97f2e522a189132

- Unbreak 'configure' followed immediately by 'make install'.  More
  fallout from ddfe26f6441c24660595c5efe5fd0bd3974cdc5c.  Report by
  Fujii Masao.;a=commitdiff;h=b87811ee273360c45d92b0e7bb7e67670312c221

- Make handling of errcodes.h more consistent with other generated
  headers.  This fixes make distprep, and seems more robust in other
  ways as well.  Some special handling is required because
  errcodes.txt is needed by some stuff in src/port, but just by
  src/backend as is the case for the other generated headers.  While
  I'm at it, fix a few other things that were overlooked in the
  original patch.;a=commitdiff;h=356f2cbbb42811596820c94aaec2e32ad1ec58d8

- Use $(MAKE) rather than make.  Per buildfarm.;a=commitdiff;h=6f59a5e5dd73ec2c448dd7038accf5aaba6dc04b

- Update ALTER TABLE docs to mention using VACUUM FULL for rewrites.
  Remove the claim that ALTER TABLE .. SET DATA TYPE is the fastest
  way of rewriting a table, since it no longer is.  Noah Misch and
  Robert Haas, based on a suggestion from Tom Lane.;a=commitdiff;h=edad08ba545b43261b4d54d65122b45c9b5ee801

- Avoid including postgres.h in frontend compiles of src/port.  This
  isn't kosher, and doesn't play nicely with my recent changes to the
  Makefile in this directory.;a=commitdiff;h=8201aea90c2b171808c65836fcce4f29b22a9dbb

- Move pipe.c into the backend.  It's full of backend-specific error
  reporting, so it's neither possible nor necessary for this to be
  used from frontend code.;a=commitdiff;h=b1e65c32168a2b64276a57be8c4dc5a63d33e12d

- Clarify comment in ATRewriteTable().  Make sure it's clear that the
  prohibition on adding a column with a default when the rowtype is
  used elsewhere is intentional, and be a bit more explicit about the
  other cases where we perform this check.;a=commitdiff;h=9e7e1172a53054dc14574e42865ea8213bc06371

- Tighten ALTER FOREIGN TABLE .. SET DATA TYPE checks.  If the foreign
  table's rowtype is being used as the type of a column in another
  table, we can't just up and change its data type.  This was already
  checked for composite types and ordinary tables, but we previously
  failed to enforce it for foreign tables.;a=commitdiff;h=65377e0b9c0e0397b1598b38b6a7fb8b6f740d39

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Greg Smith sent in another revision of the patch to do spread
checkpoint syncs.

Marko (johto) Tiikkaja sent in another revision of the patch to add
transaction-scoped advisory locks.

Joachim Wieland sent in another revision of that patch to do parallel
pg_dump using a new directory-based format.

Simon Riggs sent in a patch to add a FORCE option to DROP DATABASE.

ITAGAKI Takahiro sent in another revision of the patch to add

Fujii Masao sent in a patch to change pg_stop_backup so that it only
creates the backup history file if archiving is enabled.

Alexey Klyukin sent in another revision of the patch to transform
between PostgreSQL arrays and Perl arrays in PL/Perl.

Hitoshi Harada sent in three more revisions of the patch to add

Euler Taveira de Oliveira sent in another revision of the patch to add
named restore points.

Peter Eisentraut sent in another revision of the patch to add
per-column collations.

ITAGAKI Takahiro and Dimitri Fontaine traded patches to add support
for EXTENSIONs to pg_dump.

Kevin Grittner sent in another revision of the patch to add
SSI (serializable snapshot isolation).

Heikki Linnakangas sent in a patch to add regression tests for SSI.

YAMAMOTO Takahashi sent in another revision of the patch to avoid
de-TOAST'ing large objects.

Andrew Dunstan sent in a patch to the docs to describe how to build
PostgreSQL for Win64 using certain toolkits.

Dimitri Fontaine sent in another revision of the ALTER EXTENSION

Tomas Vondra and Greg Smith traded patches to keep the timestamp of
the latest stats reset.

Magnus Hagander sent in three revisions of a patch to move the WAL

Bruce Momjian sent in a patch to simplifiy the pg_upgrade executable
checks per suggestion from Robert Haas.

Robert Haas sent in another revision of the patch to limit hint bit

Bruce Momjian sent in two more revisions of the patch to fix
is_absolute_path on Windows.

ITAGAKI Takahiro sent in a patch to implement a jagged row CSV API, to
be applied atop Andrew Dunstan's patch to expose the COPY API.

Thom Brown sent in a patch to fix an issue where generate_series()
misbehaved by returning if the series hits either the upper or lower
boundary during increment, or goes beyond it, none of which should

Jan Urbanski sent in another flock of patches to improve PL/Python.

Robert Haas sent in another revision of the patch to skip table
rewrites in cases where it can be proven that this will not actually
change anything when someone issues an ALTER TABLE.

Alex Hunsaker sent in another revision of the patch to convert
between PostgreSQL arrays an Perl arrays in PL/Perl.

Stephen Frost sent in another revision of the patch to allow logging
the current role.

Jeff Davis sent in another revision of the patch to add range types.

Simon Riggs sent in a patch to fix commit performance in SAVEPOINTs,
which had O(n^2) behavior.

Bruce Momjian sent in a doc patch for Streaming Replication.


No Trackbacks


Display comments as Linear | Threaded

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.
Form options