Skip to content


Weiss gar nicht, was meine Schwester für ein Problem bei ihren Traugesprächen hatte. Unseres war heute sehr entspannt und locker, so wünscht man sich die Vorbereitung.

MUA changed

Finally, after (i think) 13 years, i switched my mail user agent from pine to mutt. Not that i like the latter more, it has other problems and/or ways of handling mails which i don't like. But the (non-existent) pgp support in pine drove me crazy. After configuring a while around, more than 300 .muttrc config lines and some perl scripts to create send-hooks from nicely configured roles later i have almost the same behaviour like before. Some questions remain:

  • why does mutt jump to the next message in the pager, if i scroll down with the cursor keys at the end of the message? And how can i switch off this annoying behaviour? set pager_stop=yes
  • default colors (at least on my system) are ugly as hell, i like my green on black terminal but i don't have a great choice in colors here, mutt has only 10 or so colors ...
  • why is the send-hook not able to match the whole header (~h)? This is especially stupid because some of my former roles matched on mailinglists or email addresses only used as a target or some other header stuff. According to one comment here the 1.5 devel versions have a reply-hook ... but it's still devel.
  • why is there no possibility to stop hooks after a match?
  • $folder is set, but if i try to save a mail, mutt starts in ~, not in $folder, which would be the logical start point.
  • why does mutt jump over deleted mails in the index and why is there no config option to switch this off? Even pine has this. Use 'next-entry' and 'previous-entry' instead 'next-undeleted' and 'previous-undeleted', which is the default.
  • setmenu_scroll=yes is nice, but pine offers additional usability by not scrolling at the last line but instead you can see the next (configurable) number of mails during the scroll. Use 'set menu_context=number'.
  • pine does not only offer (a better) help for the current function or view, it also has links to other topics and to the index.
  • character encoding in the index does not work properly (yes, i tried every trick on the charset wikipage).
  • to be continued

Sprechender Reisebegleiter

Wir hatten uns so ein hübsches kleines Navi gekauft, ein Traffic Assist Highspeed II, mit TMC und Karten für ganz Europa. Versprachen jedenfalls sowohl Verpackung wie Rückfrage beim Verkäufer. Letztendlich stellte sich heraus,das Harman/Becker auch dann schon mal ein Land angibt, wenn das Kartenmaterial maximal ein paar Städte und die Autobahnen dazwischen abdeckt.

Da weder Verkäufer noch Hersteller bereit waren, das Kartenmaterial kostenlos nachzuliefern, wenn Mitte diesen Jahres ein Update erscheint, wurde das ganze dann ein Garantiefall und prompt zurückgegeben. Die Geräte von Harman/Becker sind sicherlich nicht ganz billig, jedenfalls dieses nicht. Aber das man für versprochene Leistungen extra zahlen darf, scheint auch in der Klasse üblich zu sein.

Wöchentlicher PostgreSQL Newsletter - 25. März 2007

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 25. März 2007 ==

Der letzte Termin für die Summer of Code Projekte wurde auf Montag, den 26. März ausgedehnt. Meldet euch jetzt an!

Pavel Stehule hat sein Trainingsmaterial in Tschechischer Sprache veröffentlicht.

== PostgreSQL Produkt Neuigkeiten ==

Devrim GUNDUZ hat postgresql-dbi-link in Fedora und Red Hat
Enterprise Linux Extras (EPEL) eingebracht. Das ist das erste PostgreSQL-relevante Paket in EL.

PostgreSQL Maestro 7.3 erschienen.

GT portalBase erschienen.

phpPgAdmin 4.1.1 erschienen.

Slony-I 1.1.9 und 1.2.9 sind draussen. Plane die Updates :)

Sparsegraph 0.1 erschienen.

== PostgreSQL Jobs für März ==

== PostgreSQL Lokal ==

Alles in dieser Woche war global.

== PostgreSQL in the News ==

Planet PostgreSQL:

General Bits, Archive und gelegentliche News Artikel:

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David Fetter,
Devrim GUNDUZ und Robert Treat.

Um deine Beiträge für die nächste Ausgabe zu übermitteln, sende diese
an oder in Deutsch an bis Sonntag, 15:00
Uhr Pazifischer Zeit.
Continue reading "Wöchentlicher PostgreSQL Newsletter - 25. März 2007"

Freundliche Zollbeamte

Kommen wir letzte Woche an die Deutsch-Polnische Grenze, reiche dem Beamten alle Reisepässe und beim Zurückgeben meint er zu meiner Freundin: "Ihr Pass läuft aber bald ab."

Meine spontane Antwort: "Darum heiratet Sie mich auch".

Ein Grinsen beim Beamten und ein "Gute Fahrt" waren die Antwort ;-)

Wöchentlicher PostgreSQL Newsletter - 18. März 2007

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 18. März 2007 ==

Anmeldungen für den Google Summer Of Code sind offiziell eröffnet:

Bitte kontaktiere Robert Treat at, wenn du einen kurzen Vortrag auf der PgCon halten möchtest.

== PostgreSQL Produkt Neuigkeiten ==

pg_bulkload erschienen

Replicator 8.1.9-1.7 erschienen.

PL/Proxy 2.0 erschienen:

PgBouncer 1.0 erschienen:

SkyTools 2.1 erschienen:

Slony-I 1.1.8 and 1.2.8 erschienen:

== PostgreSQL Jobs für März ==

== PostgreSQL Lokal ==

Die italienische PostgreSQL Community ist auf der Suche nach Sponsoren für ihren PostgreSQL Tag in Prato, Italien im Sommer. Mehr Informationen unter untenstehendem Link.

Anders Steinlein startet eine PUG in Norwegen, bitte kontaktiere ihn unter <>, wenn du Interesse hast.

Josh Berkus, David Fetter, Fernando Ike de Oliveira sind auf der FISL 8.0 in Porto Alegre, RS, Brazil.

== PostgreSQL in the News ==

Planet PostgreSQL:

General Bits, Archive und gelegentliche News Artikel:

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

Um deine Beiträge für die nächste Ausgabe zu übermitteln, sende diese an oder in Deutsch an bis Sonntag, 15:00 Uhr Pazifischer Zeit.

== Angewandte Patches ==

Neil Conway committed:

- Stefan Huehner's patch to mark several char* variables as const
where they are initialized with constant strings.

- Stefan Huehner's patch to change some function declarations from K&R
style to ANSI C.

Michael Meskes committed:

- Simplified sortby rule in pgsql/src/backend/parser/gram.y.

- Miscellaneous fixes to ecpg, some refactoring, and some new test

- Added new directory src/interfaces/ecpg/preproc/parser.

Alvaro Herrera committed:

- Fix uninitialized value in pgstatindex leading to invalid values
being reported in some cases. Report and patch from Tatsuhito
Kasahara. Also fix a couple of other bugs I noticed in skimming the
surrounding code.

Teodor Sigaev committed:

- Guillaume Smet's patch to add GIN support for pg_trgm, with minor
editorization by Teodor Sigaev.

Tom Lane committed:

- Fix ecpg/preproc makefile for parallel builds: parser.o must depend
on preproc.h, else make may try to build it before preproc.h is
ready. Per failures seen here and in buildfarm.

- SPI_cursor_open failed to enforce that only read-only queries could
be executed in read_only mode. This could lead to various
relatively-subtle failures, such as an allegedly stable function
returning non-stable results. Bug goes all the way back to the
introduction of read-only mode in 8.0. Per report from Gaetano

- Ooops, got only one of the two ArrayExpr variants correct in first
cut at exprTypmod support. Also, experimentation shows that we need
to label the type of Const nodes that are numeric with a specific

- Fix up the remaining places where the expression node structure
would lose available information about the typmod of an expression;
namely, Const, ArrayRef, ArrayExpr, and EXPR and ARRAY SubLinks. In
the ArrayExpr and SubLink cases it wasn't really the data
structure's fault, but exprTypmod() being lazy. This seems like a
good idea in view of the expected increase in typmod usage from
Teodor's work to allow user-defined types to have typmods. In
particular this responds to the concerns we had about eliminating
the special-purpose hack that exprTypmod() used to have for BPCHAR
Consts. We can now tell whether or not such a Const has been cast
to a specific length, and report or display properly if so. initdb
forced due to changes in stored rules.

- Fix race condition in parallel regression tests. The new plancache
test was expecting there to be no regular table named 'foo', but it
turns out the rules test transiently creates one, so that plancache
would sometimes fail. I couldn't reproduce that in quite a few
tries here, but several buildfarm machines have shown the failure.
Fix by renaming plancache's temp table to something nonconflicting.

- Make use of plancache module for SPI plans. In particular, since
plpgsql uses SPI plans, this finally fixes the ancient gotcha that
you can't drop and recreate a temp table used by a plpgsql function.
Along the way, clean up SPI's API a little bit by declaring SPI plan
pointers as "SPIPlanPtr" instead of "void *". This is cosmetic but
helps to forestall simple programming mistakes. (I have changed
some but not all of the callers to match; there are still some "void
*"'s in contrib and the PL's. This is intentional so that we can
see if anyone's compiler complains about it.)

- Fix a longstanding bug in VACUUM FULL's handling of update chains.
The code did not expect that a DEAD tuple could follow a
RECENTLY_DEAD tuple in an update chain, but because the OldestXmin
rule for determining deadness is a simplification of reality, it is
possible for this situation to occur (implying that the
RECENTLY_DEAD tuple is in fact dead to all observers, but this patch
does not attempt to exploit that). The code would follow a chain
forward all the way, but then stop before a DEAD tuple when backing
up, meaning that not all of the chain got moved. This could lead to
copying the chain multiple times (resulting in duplicate copies of
the live tuple at its end), or leaving dangling index entries behind
(which, aside from generating warnings from later vacuums, creates a
risk of wrong query results or bogus duplicate-key errors once the
heap slot the index entry points to is repopulated). The fix is to
recheck HeapTupleSatisfiesVacuum while following a chain forward,
and to stop if a DEAD tuple is reached. Each contiguous group of
RECENTLY_DEAD tuples will therefore be copied as a separate chain.
The patch also adds a couple of extra sanity checks to verify
correct behavior. Per report and test case from Pavan Deolasee.

- Arrange to install a "posixrules" entry in our timezone database, so
that POSIX-style timezone specs that don't exactly match any
database entry will be treated as having correct USA DST rules.
Also, document that this can be changed if you want to use some
other DST rules with a POSIX zone spec. We could consider changing
localtime.c's TZDEFRULESTRING, but since that facility can only deal
with one DST transition rule, it seems fairly useless now; might as
well just plan to override it using a "posixrules" entry. Backpatch
as far as 8.0. There isn't much we can do in 7.x ... either your
libc gets it right, or it doesn't.

- Fix broken markup, strange tab width.

- Regression makefile now needs to make separate lists of what to
clean for input/ and output/ directories, because with the addition
of largeobject_1.source, they're not the same list. Apparently the
current buildfarm process does not exercise whether 'make distclean'
leaves a clean tree behind, else the farm would have been failing
for awhile.

- First phase of plan-invalidation project: create a plan cache
management module and teach PREPARE and protocol-level prepared
statements to use it. In service of this, rearrange
utility-statement processing so that parse analysis does not assume
table schemas can't change before execution for utility statements
(necessary because we don't attempt to re-acquire locks for utility
statements when reusing a stored plan). This requires some
refactoring of the ProcessUtility API, but it ends up cleaner
anyway, for instance we can get rid of the QueryContext global.
Still to do: fix up SPI and related code to use the plan cache; I'm
tempted to try to make SQL functions use it too. Also, there are at
least some aspects of system state that we want to ensure remain the
same during a replan as in the original processing; search_path
certainly ought to behave that way for instance, and perhaps there
are others.

Peter Eisentraut committed:

- Reverted patch below awaiting further fixes.

- Joachim Wieland's patch which makes configuration parameters fall
back to their default values when they are removed from the
configuration file.

Magnus Hagander committed:

- MSVC build actually needs Bison 2.2 or later, not 2.1. Or 1.875 as

- Add note that diff is required for regression tests.

- Add cvs tags to msvc build files, along with a (very short) comment
about what each script does.

- Oops, forgot to remove the old genbki script.

- Turn most vc build scripts into modules instead of scripts, and just
have skeleton scripts calling them. To make it easier for the
buildfarm (or other "outside callers") to use these modules
directly. Per suggestion from Andrew Dunstan.

- Add new columns for tuple statistics on a database level to

- Greg Sabino Mullane's patch which makes psql's \da show the return
type of the aggregate.

- In pgsql/src/tools/msvc/builddoc.bat, remove extra single-quotes
copied from Unix build. Win32 doesn't strip single quotes...

- Rewrite win32 install documentation (it's not client only anymore,
and it's now complete). Update for the MSVC6/Borland support now
being only libpq. Move most of the information about full MSVC
build from README file into documentation.

- Filter out warnings coming from the stylesheets, so that actual
warnings show up properly. Show some minor progress messages.

- Set root of docbook stuff from buildenv.bat and not from
builddoc.bat. Fix calling for file renaming when cd:ed into a
different directory.

- Properly use pg_strcasecmp() instead of strcasecmp(). Un-breaks
win32 build.

- ITAGAKI Takahiro's patch which sets stderr to unbuffered for pgbench
on win32.

- Make a run with perltidy to format the MSVC perl code. Per request
from Andrew Dunstan.

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Heikki Linnakangas submitted a patch to improve bitmap scanning. A
lively discussion ensued.

Gavin Sherry sent in a different bitmap index scan patch.

Gregory Stark sent in a patch implementing Tom Lane's suggestion of
packing the external toast pointers unaligned and copying them to a
local struct to access the fields.

Pavan Deolasee sent in version 4.4 of his HOT WIP patch.

Gregory Stark sent in another version of his Packed Varlena patch.

Jeff Davis sent in another revision of his WIP synchronized scan
patch, this one with some adjustments to call ss_report_loc() less
often, changes to logging, and some new GUC variables.

Andrew Dunstan sent in a patch which removes the undocumented pre-7.3
flavor of \copy from psql.

Magnus Hagander sent in a patch which adds some new columns to

Jan Wieck sent in three revisions of a patch which extends pg_trigger
and pg_rewrite in a replication-friendly manner.

Magnus Hagander sent in a patch which replaces the pthreads code in
ecpg with native win32 threads, in order to make it threadsafe. The
idea is not to have to download the non-standard pthreads library on
windows. Does it seem like it should be doing the right thing? Does
somebody have a good test-case where ecpg breaks when not built
thread-safe? (which would then also break when built thread-safe with
a broken implementation)

ITAGAKI Takahiro sent in a cancel handler for vacuumdb, reindexdb and

Wöchentlicher PostgreSQL Newsletter - 11. März 2007

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 11. März 2007 ==

Eine lebhafte Diskussion ist auf -hackers in Gange über das automatische Erstellen von Partitionen.

== PostgreSQL Produkt Neuigkeiten ==

Phil Endecott hat neue C++ Bindings für PostgreSQL erstellt.

Security Enhanced PostgreSQL (SE-PostgreSQL) 8.2.3-1.0 alpha erschienen.

Slony-I 1.1.7 und 1.2.7 erschienen.

== PostgreSQL Jobs für März ==

== PostgreSQL Lokal ==

Die italienische PostgreSQL Community ist auf der Suche nach Sponsoren für ihren PostgreSQL Tag in Prato, Italien im Sommer. Mehr Informationen unter untenstehendem Link.

== PostgreSQL in den News ==

Planet PostgreSQL:

General Bits, Archive und gelegentliche News Artikel:

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David Fetter

Um deine Beiträge für die nächste Ausgabe zu übermitteln, sende diese an oder in Deutsch an bis Sonntag, 15:00 Uhr Pazifischer Zeit.

== Angewandte Patches ==

Andrew Dunstan committed:

- In pgsql/src/test/regress/output/largeobject_1.source, add alternate
result file for large object tests to handle Windows line ends.

Teodor Sigaev committed:

- Athough cube is a varlena type, nowhere was a detoasting of cube's
value, so fix it. Add macroses DatumGetNDBOX, PG_GETARG_NDBOX and
PG_RETURN_NDBOX. Backpatch for 8.2 too. Previous versions use
version 0 calling conventions. And fmgr code detoast values for
user-defined functions.

Alvaro Herrera committed:

- Fix a race condition that caused pg_database_size() and
pg_tablespace_size() to fail if an object was removed between calls
to ReadDir() and stat(). Per discussion in pgsql-hackers.
Bug report and patch by Michael Fuhr.

- Clean up the bootstrap code a little, and rename "dummy procs" in
the code comments and variables to "auxiliary proc", per Heikki's

Tom Lane committed:

- Fix vac_update_relstats to ensure it always sends a relcache inval
message, even if none of the fields in the pg_class row change.
This behavior is necessary to ensure other backends flush
rd_targblock values that might point to truncated-away pages. We
got this right pre-8.2 but it was broken by overoptimistic change to
not write out the pg_class row if unchanged. Per report from Pavan

- Fix oversight in original coding of inline_function(): since
check_sql_fn_retval allows binary-compatibility cases, the
expression extracted from an inline-able SQL function might have a
type that is only binary-compatible with the declared function
result type. To avoid possibly changing the semantics of the
expression, we should insert a RelabelType node in such cases. This
has only been shown to have bad consequences in recent 8.1 and up
releases, but I suspect there may be failure cases in the older
branches too, so patch it all the way back. Per bug #3116 from Greg
Mullane. Along the way, fix an omission in
eval_const_expressions_mutator: it failed to copy the relabelformat
field when processing a RelabelType. No known observable failures
from this, but it definitely isn't intended behavior.

Peter Eisentraut committed:

- Toru SHIMOGAKI's patch which adds more information about avoiding
Linux OOM killer.

Bruce Momjian committed:

- Minor edits to pgsql/doc/src/sgml/runtime.sgml

- Revert temp_tablespaces because of coding problems, per Tom Lane.

- In pgsql/src/backend/utils/adt/geo_ops.c, remove copied comments
from geo_ops.c source file and replace with new comments, and
cleanup functions. Remove copyright that is no longer relevant.

- Remove timeline for 8.3 release from FAQ_DEV, as it is now on web

Magnus Hagander commmitted:

- Remove unsafe calling of WSAStartup and WSACleanup from DllMain.
Move the inline cleanup call around so it will be called in the
right order, and be called on errors. Per report from Tokuharu

- Add script to build documentation on win32 without mingw.

- Remove old-style win32 client-only visual c++ build infrastructure
for everything except libpq. We need to keep libpq to build static
libraries and to use PQtrace with clients using older versions of

Neil Conway committed:

- Heikki Linnakangas patch which fixes a typo in a comment in

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Zoltan Boszormenyi sent in one more version of his IDENTITY/GENERATED

Nikolay Samokhvalov sent in another version of his xpath_array()

ITAGAKI Takahiro sent in a patch which automatically adjusts

ITAGAKI Takahiro sent in a patch to speed up pg_bench.

Simon Riggs sent in a patch which lets people do some heap page

Mike Rylander sent in a patch against contrib/xml2 which adds support
for default XML namespaces.

Trevor Hardcastle sent in a patch which adds support for CREATE TABLE

Tatsuhito Kasahara sent in a patch to fix a bug reporting a value of
strange leaf_fragmentation.

Pavan Deolasee sent in version 4.1 of his HOT WIP patch, this one with
some optimizations for efficiently looking up LP_DELETEd tuples and
some new logic to clean up row level fragmentation.

Gregory Stark sent in another version of his packed varlenas patch,
now with bug fixes and new regression tests.

Simon Riggs sent in a patch to add new functions that examine the
contents of heap pages, as discussed recently on -hackers.

Simon Riggs sent in a patch which adds a new GUC variable:

Simon Riggs sent in two versions of a patch to implement buffer cache
recycling for scans, as being discussed on pgsql-hackers.

Gregory Stark sent in a patch which implements WITH (not RECURSIVE).

Gregory Stark sent in another version of his compact varlena patch,
now with a special case for little-endian machines.

Heikki Linnakangas sent in a patch documenting that CLUSTER isn't

Tom Lane sent in a WIP patch for plan invalidation.

tracert is pinging webpages

Why does Windows tracert.exe support IP-addresses like:

Is this, because Microsoft does not know the difference between an IP-address and an URI? Or does the ordinary Windows user not know the difference and Microsoft avoids the awareness training?


Kommt mir das nur so vor oder behaupten in letzter Zeit eine Reihe Gaststätten, sie hätten die Preise gleich gehalten oder sogar gesenkt? Im Gegenzug stelle ich allerdings immer öfter fest, das die Teller leerer sind.

So (unter anderem) gestern auch bei einem griechischen Restaurant in Magdeburg erlebt: früher bekam man einen vollen Teller Tsatziki, nun war mal gerade der Boden des Tellers bedeckt. Der Schafskäse, den meine Freundin sich bestellt hat, war kleiner als sonst und von reichlich Soße als Beilage keine Spur: ein Klecks auf dem Käse muss ausreichen. Das ich vom Essen selbst plus Vorspeise nicht wirklich satt war, ist mir bisher auch nur selten passiert und bestimmt nicht bei ausländischer Küche.

Wiedersehen macht Freude

Da muss man bis in die Metro zum Einkaufen fahren, um ehemalige Klassenkameraden zu treffen *g*

Allerdings sind wir dadurch mit den Planungen für ein Klassentreffen auch nicht viel weiter gekommen ...

Wöchentlicher PostgreSQL Newsletter - 04. März 2007

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 04. März 2007 ==

Eine europäische PostgreSQL Gruppe formiert sich. Passt auf baue Plüschelefanten auf :)

== PostgreSQL Produkt Neuigkeiten ==

PGCluster 1.5.0rc16 & 1.7.0rc5 erschienen.

Orafce 2.1.1 erschienen, jetzt kompatibel mit 8.1.8, 8.2.3 und CVS HEAD.

pgmemcache 1.2beta1 erschienen.

Mysql2pgsql 1.2 erschienen, jetzt mit Bugfixes.

== PostgreSQL Lokal ==

Die Deutsche PostgreSQL Usergroup war mit einem Stand auf dem Linuxtag in Chemnitz vertreten. Die Präsentation war sehr erfolgreich, mit vielen interessanten Gesprächen und Feedback von vielen Usern, die PostgreSQL bereits einsetzen. Wir werden auf dem nächsten CLT wieder präsent sein.

Die italienische PostgreSQL Community ist auf der Suche nach Sponsoren
für ihren PostgreSQL Tag in Prato, Italien im Sommer. Mehr
Informationen unter untenstehendem Link.

== PostgreSQL in den News ==

Planet PostgreSQL:

General Bits, Archive und gelegentliche News Artikel:

Lorenzo Alberton hat ein Tutorial über Table Auditing geschrieben.

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

Um deine Beiträge für die nächste Ausgabe zu übermitteln, sende diese
an oder in Deutsch an bis Sonntag, 15:00 Uhr Pazifischer Zeit.

== Angewandte Patches ==

Neil Conway committed

- A patch which adds a resetStringInfo() method to the StringInfo API
and fixes various parts of the tree that were clearing a StringInfo
by hand. Making this function a part of the API simplifies client
code slightly, and avoids needlessly peeking inside the StringInfo

Peter Eisentraut committed:

- Pavel Stehule' patch which fixes date/time formats for XML Schema

Bruce Momjian committed:

- Jeremy Drake's patch which changes the large object regression test
to look more like the C it talks to by using hex representations
directly instead of baroque expressions with arithmetic on powers of

- Heikki Linnakangas's patch which splits _bt_insertonpg to two

- Simon Riggs's fix for COPY-after-truncate feature.

- Florian G. Pflug's patch which removes the undo information from
pg_controldata --- never used.

- Kris Jurka's patch which adds lo_truncate() to backend and libpq for
large object truncation.

- Darcy Buskermolen's patch which adds logging to /contrib/pg_standby
if -k couldn't clean up the log file.

- Simon Riggs' patch which add GUC log_lock_waits to log long wait

- In TODO, mark as done, "Allow psql \pset boolean variables to set to
fixed values, rather than toggle."

- Chad Wagner's patch to psql which allows \pset, \x and \t to use
boolean constants on/off, rather than just toggle.

- Update license wording in FAQ_DEV.

- Add TODO URLs for "Add REPLACE or UPSERT command that does UPDATE,
or on failure, INSERT [merge]."

- In FAQ_DEV, fix HTML markup.

- In FAQ_DEV, mention we don't want non-BSD-compatible licensed

- Add language about rights given by posting a patch to FAQ_DEV.

- In FAQ_DEV, update release timeline to use unnumber lists HTML.

- Robert Treat's update to DEV FAQ for CVS/SVN issue.

Magnus Hagander committed:

- Remove temporary Windows-specific debugging code from

- In pgsql/src/tools/msvc/build.bat, make build.bat return a proper
errorcode if the build fails.

Michael Meskes committed:

- In pgsql/src/interfaces/ecpg/ecpglib/execute.c, back-port fix of bug
2956, where ECPG mis-handled multi-byte characters.

Tom Lane committed:

- Make log_min_error_statement put LOG level at the same priority as
log_min_messages does; and arrange to suppress the duplicative
output that would otherwise result from log_statement and
log_duration messages. Bruce Momjian and Tom Lane.

- In pgsql/doc/src/sgml/array.sgml, fix broken markup, improve

- Heikki Linnakangas and Tom Lane's patch which suppresses useless
searches for unused line pointers in PageAddItem. To do this, add a
16-bit "flags" field to page headers by stealing some bits from
pd_tli. We use one flag bit as a hint to indicate whether there are
any unused line pointers; the remaining 15 are available for future
use. This is a cut-down form of an idea proposed by Hiroki Kataoka
in July 2005. At the time it was rejected because the original
patch increased the size of page headers and it wasn't clear that
the benefit outweighed the distributed cost. The flag-bit approach
gets most of the benefit without requiring an increase in the page
header size.

- In pgsql/src/backend/postmaster/pgstat.c, fix miscalculation of
stats collector's write delay, introduced in revision 1.117.

- Fix markQueryForLocking() to work correctly in the presence of
nested views. It has been wrong for this case since it was first
written for 7.1 :-( Per report from Pavel Hanak.

- Fix up several contrib modules that were using varlena datatypes in
not-so-obvious ways. I'm not totally sure that I caught everything,
but at least now they pass their regression tests with
VARSIZE/SET_VARSIZE defined to reverse byte order.

- Gregory Stark and Tom Lane's patch which replaces direct assignments
to VARATT_SIZEP(x) with SET_VARSIZE(x, len). Get rid of VARATT_SIZE
and VARATT_DATA, which were simply redundant with VARSIZE and
VARDATA, and as a consequence almost no code was using the longer
names. Rename the length fields of struct varlena and various
derived structures to catch anyplace that was accessing them
directly; and clean up various places so caught. In itself this
patch doesn't change any behavior at all, but it is necessary
infrastructure if we hope to play any games with the representation
of varlena headers.

- Get rid of the separate EState for subplans, and just let them share
the parent query's EState. Now that there's a single flat
rangetable for both the main plan and subplans, there's no need
anymore for a separate EState, and removing it allows cleaning up
some crufty code in nodeSubplan.c and nodeSubqueryscan.c. Should be
a tad faster too, although any difference will probably be hard to
measure. This is the last bit of subsidiary mop-up work from
changing to a flat rangetable.

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Gregory Stark sent in an update patch which fixes a rather critical
oversight which caused the earlier compacting-varlena patches all to
appear to work but not actually to save any space.

Gregory Stark sent in a patch which adds a special case representation
for NUMERICs that can be represented in less than 8 bytes to do so
when possible. Numbers with a decimal point in them are still stored
as two numbers.

ITAGAKI Takahiro sent in another version of his "load distributed
checkpoint" patch.

John Bartlett sent in a work-in-progress patch for updateable cursors.

Zoltan Boszormenyi sent in two more revisions of his

Chris Marcellino sent in two more versions of his POSIX shared memory

Gregory Stark sent in another revision of his packed varlena patch
which updates it for the SET_VARZSIZE changes.

Kris Jurka updated his lo_truncate patch to work with the new packed

ITAGAKI Takahiro sent in another revision of his work-in-progress
patch for dead space map.

Heikki Linnakangas sent in a patch intended to speed up COPY.

Pavan Deolasee sent in version 4.0 of his work-in-progress HOT
(highly-updated tuples) patch.

Klimaschutz Blafasel

Könnten mal die Leute, die das Autofahren immer mehr einschränken und verteuern wollen, im Gegenzug auch dafür sorgen, das die Alternativen benutzbar werden?

Die Bahn produziert derartig Verspätungen, das man frühere Verbindungen in Kauf nehmen muss, um rechtzeitig einen Termin zu erreichen. Mit etwas mehr Gepäck ist das ganze sowieso nicht mehr handhabbar.

Bei einem Flieger wird man pauschal als Terrorist verdächtigt und durchsucht. Diese Kontrollen sorgen zusätzlich für lange Wartezeiten, schliesslich müssen alle Passagiere durchleuchtet und kontrolliert werden.

Btw, die Terroristen müssen weder Bahn noch Flugzeug nehmen ... wann kommen wohl die Kontrollpunkte an den Grenzen innerhalb der EU zurück?