== Wöchentlicher PostgreSQL Newsletter - 26. Juni 2011 ==

== Wöchentlicher PostgreSQL Newsletter - 26. Juni 2011 ==

am 27.06.2011 23:00:44 von adsmail

Der Originalartikel befindet sich unter:


== Wöchentlicher PostgreSQL Newsletter - 26. Juni 2011 ==

== PostgreSQL Produkt Neuigkeiten ==

HTSQL 2.1-RC1, eine High-Level Abfragesprache für relationale
Datenbanken, ist erschienenen.

MicroOLAP Database Designer 1.8.0 für PostgreSQL ist erschienen.

psycopg2 2.4.2, ein in Python geschriebener Connector für
PostgreSQL, ist erschienen.
http://initd.org/psycopg/articles/2011/06/12/psycopg-242-rel eased/

== PostgreSQL Jobs im Juni ==

http://archives.postgresql.org/pgsql-jobs/2011-06/threads.ph p

== PostgreSQL Lokal ==

CHAR(11), die PostgreSQL Konferenz für Clustering, Hochverfügbark=
und Replikation hat jetzt die Registrierung eröffnet.
Die Konferenz findet am 11. und 12. Juli 2011 in Cambridge, UK statt.

PostgreSQL Conference China 2011 findet in Guangzhou am
15. und 16. Juli 2011 statt.

PDXPUG hostet PgDay am Sonntag, dem 24. Juli 2011, einen Tag
vor der OSCON in Portland, Oregon, USA. Details hier:

Postgres Open 2011, eine Konferenz die sich auf den Umbruch der
Datenbankindustrie durch PostgreSQL konzentriert, wird vom 14. bis 16.
September 2011 in Chicago, Illinois im Westin Michigan Avenue
Hotel stattfinden.

PG-Day Denver 2011 findet am Samstag, dem 17. September 2011 auf dem
Auraria Campus in der Nähe von Downtown Denver, Colorado statt.

PostgreSQL Conference West (#PgWest) findet vom 27. bis 30. September
2011 im San Jose Convention Center in Jan Jose, Kalifornen, USA statt.

PostgreSQL Conference Europe 2011 findet vom 18. bis
21. Oktober in Amsterdam statt.

pgbr findet in Sao Paulo, Brazilien, am 3. und 4. November 2011 statt.

PGConf.DE 2011 ist die Deutschsprachige PostgreSQL Konferenz
und wird am 11. November 2011 im Rheinischen Industriemuseum
in Oberhausen, Deutschland, stattfinden. Der Call for Papers ist offen.

== PostgreSQL in den News ==

Planet PostgreSQL: http://planet.postgresql.org/

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David Fet=

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

Noah Misch reviewed the patch to fix XML handling for the bug which
produced NULL where empty string was appropriate.

== Applied Patches ==

Tom Lane pushed:

- Fix thinko in previous patch to always update
pg_class.reltuples/relpages. I mis-simplified the test where
ANALYZE decided if it could get away without doing anything: under
the new regime, that's never allowed. Per bug #6068 from Jeff
Janes. Back-patch to 8.4, just like previous patch.
http://git.postgresql.org/pg/commitdiff/63513b207df618b52cf0 bdf42c1ec3f6e93=

- Add REL9_1_STABLE to the set of branches tracked by git_changelog.
http://git.postgresql.org/pg/commitdiff/2ed81ebfaf2b4393b76f b36c121374da7ff=

- Fix thinko in previous patch for optimizing EXISTS-within-EXISTS.
When recursing after an optimization in
pull_up_sublinks_qual_recurse, the available_rels value passed down
must include only the relations that are in the righthand side of
the new SEMI or ANTI join; it's incorrect to pull up a sub-select
that refers to other relations, as seen in the added test case. Per
report from BangarRaju Vadapalli. While at it, rethink the idea of
recursing below a NOT EXISTS. That is essentially the same
situation as pulling up ANY/EXISTS sub-selects that are in the ON
clause of an outer join, and it has the same disadvantage: we'd
force the two joins to be evaluated according to the syntactic
nesting order, because the lower join will most likely not be able
to commute with the ANTI join. That could result in having to form
a rather large join product, whereas the handling of a correlated
subselect is not quite that dumb. So until we can handle those
cases better, #ifdef NOT_USED that case. (I think it's okay to pull
up in the EXISTS/ANY cases, because SEMI joins aren't so inflexible
about ordering.) Back-patch to 8.4, same as for previous patch in
this area. Fortunately that patch hadn't made it into any shipped
releases yet.
http://git.postgresql.org/pg/commitdiff/cd1f0d04bf06938c0ee5 728fc8424d62bcf=

- Fix missed use of "cp -i" in an example, per Fujii Masao. Also be
more careful about markup: use & not just &.
http://git.postgresql.org/pg/commitdiff/31e8ab4dd98dbe702df8 b2029cf6e2424b1=

- Apply upstream fix for blowfish signed-character bug
(CVE-2011-2483). A password containing a character with the high
bit set was misprocessed on machines where char is signed (which is
most). This could cause the preceding one to three characters to
fail to affect the hashed result, thus weakening the password. The
result was also unportable, and failed to match some other blowfish
implementations such as OpenBSD's. Since the fix changes the output
for such passwords, upstream chose to provide a compatibility hack:
password salts beginning with $2x$ (instead of the usual $2a$ for
blowfish) are intentionally processed "wrong" to give the same hash
as before. Stored password hashes can thus be modified if necessary
to still match, though it'd be better to change any affected
passwords. In passing, sync a couple other upstream changes that
marginally improve performance and/or tighten error checking.
Back-patch to all supported branches. Since this issue is already
public, no reason not to commit the fix ASAP.
http://git.postgresql.org/pg/commitdiff/ca59dfa6f727fe3bf3a0 1904ec30e87f7fa=

- Minor editing for README-SSI. Fix some grammatical issues, try to
clarify a couple of proofs, make the terminology more consistent.
http://git.postgresql.org/pg/commitdiff/a3290f655e12f43943bd abc9fd91477316a=

- Fix symlink for errcodes.h so it works in VPATH builds from
tarballs. backend/Makefile was treating errcodes.h as a header
always generated during build, but actually it's a header provided
in tarballs. Hence, must use the absolute-symlink recipe, not the
relative-symlink one. Per bug #6072 from Hartmut Raschick.
http://git.postgresql.org/pg/commitdiff/0ade8421b5b2c85185fd fddbd5833222e5d=

- Add missing -I switch for VPATH builds. Per bug #6073 from Hartmut
http://git.postgresql.org/pg/commitdiff/9cc2c182fc20d5734b3a 43834d4fb738b7d=

- Update alternative expected file for recent sequence test changes.
http://git.postgresql.org/pg/commitdiff/c6c4177f1084fec693a9 0c1e68aaa004768=

- Revert "Don't select log_cnt in sequence regression tests." This
reverts commit addf11f9a264417aa467d4e135b9a8afc59f172a. The right
fix for the problem is to update the alternative expected file, not
to lobotomize the test case.
http://git.postgresql.org/pg/commitdiff/6aab24d7bc82bb6ca022 358e05182fa537d=

- Undo overly enthusiastic de-const-ification. s/const//g wasn't
exactly what I was suggesting here ... parameter declarations of the
form "const structtype *param" are good and useful, so put those
occurrences back. Likewise, avoid casting away the const in a
"const void *" parameter.
http://git.postgresql.org/pg/commitdiff/223be216afa13b708904 ca1d72898f2ccf5=

Peter Eisentraut pushed:

- Produce HISTORY file consistently as ASCII. The release notes may
contain non-ASCII characters (for contributor names), which lynx
converts to the encoding determined by the current locale. The get
output that is deterministic and easily readable by everyone, we
make lynx produce LATIN1 and then convert that to ASCII with
transliteration for the non-ASCII characters.
http://git.postgresql.org/pg/commitdiff/811f1cec8cd39d426a82 4223e3c4a6fa5b0=

- Message style and spelling improvements
http://git.postgresql.org/pg/commitdiff/e2a0cb1a803b8a4a2b70 5728e13d61e6d2b=

- Add a bit of markup.
http://git.postgresql.org/pg/commitdiff/2c262ea9fef2652fd515 82a364c69708879=

- Add information schema views role_udt_grants, udt_privileges,
http://git.postgresql.org/pg/commitdiff/d34e142c511c779a294c e96eee0e9ab535b=

- Replace tabs by spaces in makefile comment.
http://git.postgresql.org/pg/commitdiff/e8e2fba1fee225bdfeda 82c2b9e14aa0cb1=

- Add the possibility to pass --flag arguments to xgettext calls. The
--flag argument can be used to tell xgettext the arguments of which
functions should be flagged with c-format in the PO files, instead
of guessing based on the presence of format specifiers, which fails
if no format specifiers are present but the translation accidentally
introduces one. Appropriate flag settings have been added for each
message catalog. based on a patch by Christoph Berg for bug #6066
http://git.postgresql.org/pg/commitdiff/cb5a7bc2dce4377036bd 70a69b2b7b3bc82=

- Make _ be automatically included in GETTEXT_TRIGGERS. Since it's
globally defined in c.h, it should be treated as a gettext trigger
http://git.postgresql.org/pg/commitdiff/c6ef13937652850267e5 422213af67144f4=

- Replace :=3D by =3D in nls.mk files. It currently doesn't make a
difference, but it's inconsistent with most other usage, and it
might interfere with a future patch, so I'll change it all in a
separate commit. Also, replace tabs with spaces for alignment.
http://git.postgresql.org/pg/commitdiff/1b11e239cac545b86886 a30fa15ae1f7c2d=

- Refactor common gettext triggers. Put gettext trigger words that
are common to the backend and backend modules into a makefile
variable to include everywhere, to avoid error-prone repetitions.
http://git.postgresql.org/pg/commitdiff/7a5a843a2a6363645839 7823f090d5e28a0=

- Remove some cruft from nls.mk files
http://git.postgresql.org/pg/commitdiff/314837ec3b00bb387f1b d601faa9d535fa2=

- Add missing file to GETTEXT_FILES. This doesn't actually change the
resulting set of strings, but better be correct.
http://git.postgresql.org/pg/commitdiff/cc06e4a1aae0858603fb b56c021e5504458=

Michael Meskes pushed:

- Fixed string in German translation that causes segfault. Applied
patch by Christoph Berg to replace placeholder "%s" by
correct string.
http://git.postgresql.org/pg/commitdiff/bddc35ac664bc16a8953 d0d46bf85e80b78=

Alvaro Herrera pushed:

- Remove extra copying of TupleDescs for heap_create_with_catalog.
Some callers were creating copies of tuple descriptors to pass to
that function, stating in code comments that it was necessary
because it modified the passed descriptor. Code inspection reveals
this not to be true, and indeed not all callers are passing copies
in the first place. So remove the extra ones and the misleading
comments about this behavior as well.
http://git.postgresql.org/pg/commitdiff/a40a5d9468a5f9f11d35 5ebf07f7741f5c2=

Heikki Linnakangas pushed:

- Fix bug introduced by recent SSI patch to merge ROLLED_BACK and
MARKED_FOR_DEATH flags into one. We still need the ROLLED_BACK flag
to mark transactions that are in the process of being rolled back.
To be precise, ROLLED_BACK now means that a transaction has already
been discounted from the count of transactions with the oldest xmin,
but not yet removed from the list of active transactions. Dan Ports
http://git.postgresql.org/pg/commitdiff/7cb2ff9621a6129cc251 f9d06bf23d3f9d4=

- Fix bug in PreCommit_CheckForSerializationFailure. A transaction
that has already been marked as PREPARED cannot be killed. Kill the
current transaction instead. One of the prepared_xacts regression
tests actually hits this bug. I removed the anomaly from the
duplicate-gids test so that it fails in the intended way, and added
a new test to check serialization failures with a prepared
transaction. Dan Ports
http://git.postgresql.org/pg/commitdiff/1eea8e8a06bc718836c3 4b8f7da9420b38f=

- Adjust the alternative expected output file for prepared_xacts test
case, used when max_prepared_transactions=3D0, for the recent changes
in the test case.
http://git.postgresql.org/pg/commitdiff/38c0e7218065d9be47b1 6f2b36264bcefba=

- Remove pointless const qualifiers from function arguments in the SSI
code. As Tom Lane pointed out, "const Relation foo" doesn't
guarantee that you can't modify the data the "foo" pointer points
to. It just means that you can't change the pointer to point to
something else within the function, which is not very useful.
http://git.postgresql.org/pg/commitdiff/5da417f7c4b2adb5b2aa 4d6c86354f8de87=

Robert Haas pushed:

- Performance tuning advice for SSI. Kevin Grittner, with additional
wordsmithing by me.
http://git.postgresql.org/pg/commitdiff/771a9f69f70e0b4fa953 47df7ab346e5bdb=

- Add notion of a "transform function" that can simplify function
calls. Initially, we use this only to eliminate calls to the
varchar() function in cases where the length is not being reduced
and, therefore, the function call is equivalent to a RelabelType
operation. The most significant effect of this is that we can avoid
a table rewrite when changing a varchar(X) column to a varchar(Y)
column, where Y > X. Noah Misch, reviewed by me and Alexey Klyukin
http://git.postgresql.org/pg/commitdiff/8f9fe6edce358f7904e0 db119416b4d1080=

- Make deadlock_timeout PGC_SUSET rather than PGC_SIGHUP. This allows
deadlock_timeout to be reduced for transactions that are
particularly likely to be involved in a deadlock, thus detecting it
more quickly. It is also potentially useful as a poor-man's
deadlock priority mechanism: a transaction with a high
deadlock_timeout is less likely to be chosen as the victim than one
with a low deadlock_timeout. Since that could be used to game the
system, we make this PGC_SUSET rather than PGC_USERSET. At some
point, it might be worth thinking about a more explicit priority
mechanism, since using this is far from fool-proof. But let's see
whether there's enough use case to justify the additional work
before we go down that route. Noah Misch, reviewed by Shigeru
http://git.postgresql.org/pg/commitdiff/7095003cbef630fe29c2 299cc819fd37c69=

- Add smallserial pseudotype. This is just like serial and bigserial,
except it generates an int2 column rather than int4 or int8. Mike
Pultz, reviewed by Brar Piening and Josh Kupershmidt
http://git.postgresql.org/pg/commitdiff/61307dccc5f2f352d7df ed5c13abf3f0e26=

- Add some regression tests for serial pseudotypes. Josh Kupershmidt
http://git.postgresql.org/pg/commitdiff/431ab0e82819b31fcd1e 33ecb52c2cd3b4b=

- Make the visibility map crash-safe. This involves two main changes
from the previous behavior. First, when we set a bit in the
visibility map, emit a new WAL record of type XLOG_HEAP2_VISIBLE.
Replay sets the page-level PD_ALL_VISIBLE bit and the visibility map
bit. Second, when inserting, updating, or deleting a tuple, we can
no longer get away with clearing the visibility map bit after
releasing the lock on the corresponding heap page, because an
intervening crash might leave the visibility map bit set and the
page-level bit clear. Making this work requires a bit of interface
refactoring. In passing, a few minor but related cleanups: change
the test in visibilitymap_set and visibilitymap_clear to throw an
error if the wrong page (or no page) is pinned, rather than silently
doing nothing; this case should never occur. Also, remove duplicate
definitions of InvalidXLogRecPtr. Patch by me, review by Noah
http://git.postgresql.org/pg/commitdiff/503c7305a1e379f95649 eef1a694d0c1dbd=

- Don't select log_cnt in sequence regression tests. It's not
entirely stable. Per suggestion from Josh Kupershmidt.
http://git.postgresql.org/pg/commitdiff/addf11f9a264417aa467 d4e135b9a8afc59=

- Documentation improvements for pg_locks with respect to SSI.
Explain that querying pg_locks does not simultaneously lock both the
normal lock manager and the predicate lock manager. Per discussion
with Kevin Grittner.
http://git.postgresql.org/pg/commitdiff/eb03cff8208aa959aabb 91aaac0e21fc889=

Bruce Momjian pushed:

- Fix pg_upgrade status message capitalization mistake. Backpatch to
9.1 and 9.0. Dan McGee
http://git.postgresql.org/pg/commitdiff/b06ad7def83669f2ddd2 18a184956c38a50=

- Adjust pg_upgrade check for pg_upgrade_support to happen after the
binary directory has been validated. Backpatch to 9.1. Dan McGee
http://git.postgresql.org/pg/commitdiff/559b114dd466db05125b 9b88270988a9949=

- Rename pg_upgrade directory validation function, for clarity.
http://git.postgresql.org/pg/commitdiff/effbe6ecb4848aee867e bd867d0978c5e81=

- In pg_upgrade, fix odd function parameter wrapping.
http://git.postgresql.org/pg/commitdiff/3b3c2cf18005fdf0175e acebd200cee924c=

- In pg_upgrade, check that the binary and data directories are the
same major version. Backpatch to 9.1. Dan McGee
http://git.postgresql.org/pg/commitdiff/0b44818ead933f9a09c8 5045003eafbcb4b=

- In pg_upgrade docs, clarify that link mode uses "hard" links.
Backpatch to 9.1 and 9.0.
http://git.postgresql.org/pg/commitdiff/194e6ee74b0282d0a7b8 d0c815ea7204fc2=

Joe Conway pushed:

- Async dblink functions require a named connection, and therefore
Problem found by Peter Eisentraut and patch by Fujii Masao.
http://git.postgresql.org/pg/commitdiff/8af3596d6bb6cfffb571 61a62aa2f7f56d5=

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Alexander Korotkov and Heikki Linnakangas traded revisions of a patch
to build GiST indexes more quickly.

Cedric Villemain sent in another revision, along with a review, of the
patch to constrain backend temp file space.

Alexey Klyukin sent in another revision of the patch to allow
validating configuration files without starting the postmaster.

Pavel Stehule sent in a patch for PL/pgsql to remove an unnecessary
ccache search when a array variable is updated.

Alvaro Herrera sent in two more revisions of the patch to make
keywords in pg_hba.conf field-specific.

Per review from Steve Singer, Pavel Stehule sent in another revision
of the patch to enhance error reporting in PL/pgsql.

Peter Geoghegan sent in another revision of the patch which wakes on
postmaster death.

Simon Riggs sent in two more revisions of a patch to fix an issue in a
privious patch, which was intended to take weaker locks on some kinds
of DDL.

Robert Haas and KaiGai Kohei traded patches to rework DROP.

Andrew Dunstan sent in a WIP patch to replace pgindent.

Peter Geoghegan sent in two more revisions of a patch to wake on
postmaster death.

Magnus Hagander sent in another revision of a patch to fix some
infelicities in how pg_dump uses malloc.

Florian Pflug sent in two more revisions of a patch to fix xml

Dan Ports and Kevin Grittner traded patches to skip some calls to

Bruce Momjian sent in two revisions of a patch to change the port for

Robert Haas sent in a patch intended to reduce spinlock contention.

Mark Kirkwood reviewed and revised the patch to control backend temp
file space.

Andreas 'ads' Scherbaum
Deutsche PostgreSQL User Group: http://www.pgug.de/
DPWN: http://andreas.scherbaum.la/blog/categories/18-PWN

Sent via pgsql-de-allgemein mailing list (pgsql-de-allgemein@postgresql.org)
To make changes to your subscription: