Skip to content

Wöchentlicher PostgreSQL Newsletter - 26. Dezember 2010

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 26. Dezember 2010 ==

Fröhlichen zweiten Weihnachtsfeiertag vom wöchentlichen
PostgreSQL Newsletter!

== PostgreSQL Produkt Neuigkeiten ==

psycopg2 2.3.2, ein in Python geschriebener Connector für
PostgreSQL, ist erschienen.

== PostgreSQL Jobs im Dezember ==

== PostgreSQL Lokal ==

FOSDEM ist eine der größten Freien und Open Source Veranstaltungen
und findet jährlich in Brüssel, Belgien statt, nächstes Jahr am
5. und 6. Februar 2011. Ungefähr 4.000 Besucher finden sich dort ein.
Sende deine Vorträge an fosdem AT postgresql DOT eu.

Der Call for Papers für den vierten Prager
Development Day ist eröffnet. Die Veranstaltung
findet am 10. Februar 2011 an der Charles
Universität in Prag statt.

Der Call für Projekte des PostgreSQLFr hat begonnen. Projekte müssen
sich um PostgreSQL drehen und die französisch-sprechende Community
betreffen. Maile Projektvorschläge an appel-projets-2010
AT postgresql DOT fr.

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

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.

== 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 ==

Alvaro Herrera pushed:

- Fix typo.  Jaime Casanova.;a=commitdiff;h=f9e9763b62df5415a60f30b441a73b381599e760

Robert Haas pushed:

- Allow transactions that don't write WAL to commit asynchronously.
  This case can arise if a transaction has written data, but only to
  temporary tables.  Loss of the commit record in case of a crash
  won't matter, because the temporary tables will be lost anyway.
  Reviewed by Heikki Linnakangas and Simon Riggs.;a=commitdiff;h=f6a0863e3cb72763490ceca2c558d5ef2dddd5f2

- Work around unfortunate getppid() behavior on BSD-ish systems.  On
  MacOS X, and apparently also on other BSD-derived systems, attaching
  a debugger causes getppid() to return the pid of the debugging
  process rather than the actual parent PID.  As a result, debugging
  the autovacuum launcher, startup process, or WAL sender on such
  systems causes it to exit, because the previous coding of
  PostmasterIsAlive() detects postmaster death by testing whether
  getppid() == PostmasterPid.  Work around that behavior by checking
  the return value of getppid() more carefully.  If it's
  PostmasterPid, the postmaster must be alive; if it's 1, assume the
  postmaster is dead.  If it's any other value, assume we've been
  debugged and fall through to the less-reliable kill() test.  Review
  by Tom Lane.;a=commitdiff;h=24ecde7742cd4d7c781e6890b07571fff42b25dc

- Fix typos.  Andreas Karlsson.;a=commitdiff;h=c5160b7eecf97a357375960b02a30317474334a3

- Use memcmp() rather than strncmp() when shorter string length is
  known.  It appears that this will be faster for all but the shortest
  strings; at least one some platforms, memcmp() can use
  word-at-a-time comparisons.  Noah Misch, somewhat pared down.;a=commitdiff;h=32ba2b516066688ff56e6d62a7ff4a01c88f5700

- Typo fix.  Noted by Thom Brown.;a=commitdiff;h=2a0f13a765befefc2658d3729f3e174b7c252125

- Document pg_dump(all) --no-security-label instead of --security-label.
  The former is the option actually supported by these commands.;a=commitdiff;h=a1b0035949da09bb0f19d2d9c2d54ca54ca55752

- Correct spelling: longjump() -> longjmp().;a=commitdiff;h=4ec92b05e640b0991ba67d41cbb097200200fe70

- Add foreign data wrapper error code values for SQL/MED.  Extracted
  from a much larger patch by Shigeru Hanada.;a=commitdiff;h=85cff3ce7f360d139d87aee836d75a6202fee066

- Corrections to patch adding SQL/MED error codes.  My previous
  commit, 85cff3ce7f360d139d87aee836d75a6202fee066 on 2010-12-25,
  failed to update errcodes.sgml or plerrcodes.h.  This patch corrects
  that oversight, per a gripe from Tom Lane, and also corrects a
  typographical error.;a=commitdiff;h=63676ebff402050f6b0b347188f5e857474da9e1

Magnus Hagander pushed:

- Add PQlibVersion() function to libpq.  This function is like the
  PQserverVersion() function except it returns the version of libpq,
  making it possible for a client program or driver to determine which
  version of libpq is in use at runtime, and not just at link time.
  Suggested by Harald Armin Massa and several others.;a=commitdiff;h=de9a4c27fefcc0d104bc9c97f4a93a49a25bf66d

Bruce Momjian pushed:

- Wording improvements for pg_ctl manual page.;a=commitdiff;h=28d5c565ced893366d010e6754a9fad6d0a40364

- Document that BBU's do not allow partial page writes to be safely
  turned off unless they guarantee that all writes to the BBU arrive
  in 8kB chunks.  Per discussion with Greg Smith;a=commitdiff;h=7a1ca8977fd109a86b540444f71f24bd2f38ea43

- Improve "pg_ctl -w start" server detection by writing the postmaster
  port and socket directory into, and have pg_ctl read
  from that file, for use by PQping().;a=commitdiff;h=075354ad1bc0496c30dbd4dafb0f88a4d3e54cbc

- Backpatch to 9.0 a doc mention that a BBU does not prevent partial
  page writes.;a=commitdiff;h=c47458529533bc88e34778818a4ce7d5c309d7a8

- Remove quotes from boolean recovery.conf.sample parameters, now that
  the quotes are not required.  This now matches postgresql.conf's
  specification of booleans.;a=commitdiff;h=5000472112da91023bf468e57bb8ce9217426ed7

Heikki Linnakangas pushed:

- Rewrite the GiST insertion logic so that we don't need the
  post-recovery cleanup stage to finish incomplete inserts or splits
  anymore.  There was two reasons for the cleanup step: 1. When a new
  tuple was inserted to a leaf page, the downlink in the parent needed
  to be updated to contain (i.e. to be consistent with) the new key.
  Updating the parent in turn might require recursively updating the
  parent of the parent.  We now handle that by updating the parent
  while traversing down the tree, so that when we insert the leaf
  tuple, all the parents are already consistent with the new key, and
  the tree is consistent at every step.  2. When a page is split, we
  need to insert the downlink for the new right page(s), and update
  the downlink for the original page to not include keys that moved to
  the right page(s).  We now handle that by setting a new flag,
  F_FOLLOW_RIGHT, on the non-rightmost pages in the split.  When that
  flag is set, scans always follow the rightlink, regardless of the
  NSN mechanism used to detect concurrent page splits.  That way the
  tree is consistent right after split, even though the downlink is
  still missing.  This is very similar to the way B-tree splits are
  handled.  When the downlink is inserted in the parent, the flag is
  cleared.  To keep the insertion algorithm simple, when an insertion
  sees an incomplete split, indicated by the F_FOLLOW_RIGHT flag, it
  finishes the split before doing anything else.  These changes allow
  removing the whole "invalid tuple" mechanism, but I retained the
  scan code to still follow invalid tuples correctly.  While we don't
  create any such tuples anymore, we want to handle them gracefully in
  case you pg_upgrade a GiST index that has them.  If we encounter any
  on an insert, though, we just throw an error saying that you need to
  REINDEX.  The issue that got me into doing this is that if you did a
  checkpoint while an insert or split was in progress, and the
  checkpoint finishes quickly so that there is no WAL record related
  to the insert between RedoRecPtr and the checkpoint record, recovery
  from that checkpoint would not know to finish the incomplete insert.
  IOW, we have the same issue we solved with the rm_safe_restartpoint
  mechanism during normal operation too.  It's highly unlikely to
  happen in practice, and this fix is far too large to backpatch, so
  we're just going to live with in previous versions, but this
  refactoring fixes it going forward.  With this patch, you don't get
  the annoying 'index "FOO" needs VACUUM or REINDEX to finish crash
  recovery' notices anymore if you crash at an unfortunate moment.;a=commitdiff;h=9de3aa65f01fb51cbc725e8508ea233e4e92c46c

Michael Meskes pushed:

- Added rule to ecpg lexer to accept "Unicode surrogate pair in
  extended quoted string". This is not really needed because the
  string gets copied to the output untranslated anyway, but by adding
  this rule the lexer stays in sync with the backend lexer.;a=commitdiff;h=727a5a1620dd9f84036f8094f99a6ea494143bef

Peter Eisentraut pushed:

- Move the documentation of --no-security-label to a more sensible
  place.  The order on the pg_dump/pg_dumpall man pages is not very
  strict, but surely putting it under connection options was wrong.;a=commitdiff;h=4b1742a192a60b9c063fd7e93f5aed7a697bece1

- Release notes for 9.1alpha3.;a=commitdiff;h=b2fd345ab9ef5857ff42e6d81d57a0f15247b430

- Fix grammar.;a=commitdiff;h=79a9decdd33c9662c0722ef1d49d8aa951739da4

Andrew Dunstan pushed:

- Allow vpath builds and regression tests to succeed on Mingw.
  Backpatch to release 8.4 - earlier releases would require more
  changes and it's not worth the trouble.;a=commitdiff;h=04ee0db6b287a1ff41b55cc440769a1dddc318a7

- Only build in crashdump support on Windows if there's a working

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Magnus Hagander sent in another revision of the patch to allow
querying the version of libpq.

ITAGAKI Takahiro sent in another revision of the patch to export some
of the functions COPY uses.  This will help, among other things, the
SQL/MED file-based operations.

Dimitri Fontaine sent in two more revisions of the patch to add

Andrew Dunstan sent in a patch to allow a vpath build to be used on

Noah Misch sent in a patch to change strncmp to memcmp when we know
the shorter length.  In the tests he ran, this resulted in a 13% speed

Noah Misch sent in a patch based on the above patch to check lengths
texteq, textne, byteaeq and byteane before detoasting, as unequal
lengths imply inequality without further elaboration.

Alvaro Herrera sent in a patch atop Dimitri Fontaine's extension

Sushant Sinha sent in a patch to fix an off-by-one error in

Shigeru HANADA sent in another revision of the file_fdw patch for

Merlin Moncure sent in a patch which makes the existence of hint bits
a compile time option.

Alex Hunsaker sent in another revision of the patch to fix an issue
with PL/PerlU's handling of utf8.

Fujii Masao sent in two more revisions of a patch to fix a bug in

Bruce Momjian sent in a patch to add the port number and optionally
socket directory location to, and modify pg_ctl to use
that information.

Jan Urbanski sent in a flock of patches to refactor PL/PythonU.

Tomas Vondra sent in another revisions of the patch to allow people to
see the timestamp at which stats were reset by database if any table,
index or function's statistics have been reset.

Magnus Hagander sent in a patch to change walsender to require a
special privilege for replication.

KaiGai Kohei sent in SE-PostgreSQL as a contrib module.

Shigeru HANADA sent in another revision of the patch to make file_fdw

Robert Haas sent in another revision of the patch to add unlogged

Kevin Grittner sent in a patch to address issues with long-running
transactions in SERIALIZABLE isolation mode.

ITAGAKI Takahiro sent in another revision of the patch to add SQL
standard MULTISETs.


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