== Wöchentlicher PostgreSQL Newsletter - 26. Dezember 2010 ==
am 27.12.2010 19:20:36 von adsmailDer Originalartikel befindet sich unter:
http://www.postgresql.org/community/weeklynews/pwn20101226
== 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.
http://initd.org/psycopg/
== PostgreSQL Jobs im Dezember ==
http://archives.postgresql.org/pgsql-jobs/2010-12/threads.ph p
== 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.
http://andreas.scherbaum.la/blog/archives/749-PostgreSQLFOSD EM-2011-Call-fo=
r-talks.html
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.
http://archives.postgresql.org/pgsql-announce/2010-12/msg000 09.php
Der Call für Projekte des PostgreSQLFr hat begonnen. Projekte müs=
sen
sich um PostgreSQL drehen und die französisch-sprechende Community
betreffen. Maile Projektvorschläge an appel-projets-2010
AT postgresql DOT fr.
http://www.postgresql.fr/appel_a_projets_2010:call_for_proje cts
PGDay findet dieses Jahr während der südkalifornischen Linux Auss=
tellung
(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
http://www.postgresqlconference.org
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.
http://www.pgcon.org/2011/
== PostgreSQL in den News ==
Planet PostgreSQL: http://planet.postgresql.org/
Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David Fet=
ter.
Sende Neuigkeiten und Ankündigungen bis Sonntag, 15 Uhr Pazifischer
Zeit. Bitte sende englische Beiträge an david@fetter.org, deutsche an
pwn@pgug.de, italienische an pwn@itpug.org, spanische an pwn@arpug.com.ar.
== Reviews ==
== Angewandte Patches ==
Alvaro Herrera pushed:
- Fix typo. Jaime Casanova.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Df9e9=
763b62df5415a60f30b441a73b381599e760
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Df6a0=
863e3cb72763490ceca2c558d5ef2dddd5f2
- 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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D24ec=
de7742cd4d7c781e6890b07571fff42b25dc
- Fix typos. Andreas Karlsson.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Dc516=
0b7eecf97a357375960b02a30317474334a3
- 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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D32ba=
2b516066688ff56e6d62a7ff4a01c88f5700
- Typo fix. Noted by Thom Brown.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D2a0f=
13a765befefc2658d3729f3e174b7c252125
- Document pg_dump(all) --no-security-label instead of --security-label.
The former is the option actually supported by these commands.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Da1b0=
035949da09bb0f19d2d9c2d54ca54ca55752
- Correct spelling: longjump() -> longjmp().
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D4ec9=
2b05e640b0991ba67d41cbb097200200fe70
- Add foreign data wrapper error code values for SQL/MED. Extracted
from a much larger patch by Shigeru Hanada.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D85cf=
f3ce7f360d139d87aee836d75a6202fee066
- 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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D6367=
6ebff402050f6b0b347188f5e857474da9e1
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Dde9a=
4c27fefcc0d104bc9c97f4a93a49a25bf66d
Bruce Momjian pushed:
- Wording improvements for pg_ctl manual page.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D28d5=
c565ced893366d010e6754a9fad6d0a40364
- 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
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D7a1c=
a8977fd109a86b540444f71f24bd2f38ea43
- Improve "pg_ctl -w start" server detection by writing the postmaster
port and socket directory into postmaster.pid, and have pg_ctl read
from that file, for use by PQping().
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D0753=
54ad1bc0496c30dbd4dafb0f88a4d3e54cbc
- Backpatch to 9.0 a doc mention that a BBU does not prevent partial
page writes.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Dc474=
58529533bc88e34778818a4ce7d5c309d7a8
- Remove quotes from boolean recovery.conf.sample parameters, now that
the quotes are not required. This now matches postgresql.conf's
specification of booleans.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D5000=
472112da91023bf468e57bb8ce9217426ed7
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D9de3=
aa65f01fb51cbc725e8508ea233e4e92c46c
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D727a=
5a1620dd9f84036f8094f99a6ea494143bef
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D4b17=
42a192a60b9c063fd7e93f5aed7a697bece1
- Release notes for 9.1alpha3.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Db2fd=
345ab9ef5857ff42e6d81d57a0f15247b430
- Fix grammar.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D79a9=
decdd33c9662c0722ef1d49d8aa951739da4
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.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3D04ee=
0db6b287a1ff41b55cc440769a1dddc318a7
- Only build in crashdump support on Windows if there's a working
dbghelp.h.
=20
http://git.postgresql.org/gitweb?p=3Dpostgresql.git;a=3Dcomm itdiff;h=3Da534=
728afb7341e1ddf2df16196ed501eaa378c2
== 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
extensions.
Andrew Dunstan sent in a patch to allow a vpath build to be used on
MingW.
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
boost.
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
patch.
Sushant Sinha sent in a patch to fix an off-by-one error in
ts_rank_cd.
Shigeru HANADA sent in another revision of the file_fdw patch for
SQL/MED.
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
SignalSomeChildren.
Bruce Momjian sent in a patch to add the port number and optionally
socket directory location to postmaster.pid, 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
work.
Robert Haas sent in another revision of the patch to add unlogged
tables.
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.
--
Andreas 'ads' Scherbaum
Deutsche PostgreSQL User Group: http://www.pgug.de/
DPWN: http://andreas.scherbaum.la/blog/categories/18-PWN
--=20
Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-de-allgemein