Skip to content

Wöchentlicher PostgreSQL Newsletter - 07. Oktober 2007

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 07. Oktober 2007 ==

Die PostgreSQL 8.3 beta 1 erscheint diese Woche.

== PostgreSQL Produkt Neuigkeiten ==

Borland Delphi-PostgreSQL-Interface erschienen.

psqlODBC 08.02.0500 erschienen.

pgtreelib version 1.0beta1 erschienen.

PostgresDAC 2.4.0 erschienen.

== PostgreSQL Jobs im Oktober ==

== PostgreSQL Lokal ==

Sean Chittenden wird vor der SFPUG am Dienstag den
9. Oktober um 19:30 über I/O für Datenbanken sprechen.
RSVP und mehr Infos:

Die PostgreSQL Herbstkonferenz wird am 20. Oktober in Portland sein.

Simon Riggs wird einen Vortrag auf der Databases und das Web am
16. Oktober in London halten.

== PostgreSQL in den News ==

Planet PostgreSQL:

General Bits, Archive und gelegentliche News Artikel:

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

Jan Wieck committed:

- Added the Skytools extended transaction ID module to contrib as
discussed on CORE previously. This module offers transaction ID's
containing the original XID and the transaction epoch as a bigint
value to the user level. It also provides a special txid_snapshot
data type that contains an entire transactions visibility snapshot
information, which is useful to determine if a particular txid was
visible to a transaction or not. The module has been tested by
porting Slony-I from using its original xxid data type.

Alvaro Herrera committed:

- A few improvements to analyze and vacuum sections in documentation:
add "see also" entries for autovacuum in analyze and vacuum
reference pages, and enhance usage of cross-references in the
maintenance page.

- In pgsql/doc/src/sgml/func.sgml, change π to plain "pi" in index
entry, to avoid double escaping issues.

- In pgsql/doc/src/sgml/Makefile, clean up the doc makefile for draft
HTML generation. It no longer works to do "make DRAFT=Y html"; you
need to use "make draft" (which was also supported previously).

- In pgsql/doc/src/sgml/Makefile, remove stylesheet.css file on "make
clean", created only on VPATH builds.

- In pgsql/doc/src/sgml/maintenance.sgml, fix missing parenthesis, per
Guillaume Lelarge.

- Fix SGML markup, from Guillaume Lelarge.

Marc Fournier committed:

- tag it 8.3beta1 ... the beta cycle begins

Neil Conway committed:

- Two fixes for the release notes from Guillaume Smet. In passing,
make a minor markup improvement.

- First pass at SGML-ifying the 8.3 release notes. Plenty of
improvements left to made, but this is a start.

- Various minor improvements to the 8.3 release notes.

- Fix a compiler warning on Win32. Hannes Eder.

Michael Meskes committed:

- In ecpg, replaced tabs with spaces.

- In ecpg, removed newline at end of exports files.

- In ecpg, added def-files to all: target so they are build everytime.

- Argh, missing dll in filename in pgsql/src/interfaces/ecpg/compatlib
and pgsql/src/interfaces/ecpg/pgtypeslib.

- In pgsql/src/interfaces/ecpg/compatlib/Makefile, add snprintf.c for
some systems.

- In pgsql/src/interfaces/ecpg/compatlib/exports.txt, stripped two
symbols that are needed.

- In pgsql/src/interfaces/ecpg/compatlib/Makefile, also build snprintf
from pgport if needed.

- Remove exports.list into clean target.

- Also created export list for pgytpeslib and compatlib. Set pgtypes
library version to 3.0. Set compat library version to 3.0.

- Cleaned up ecpglib and renamed functions that do not need to be
exported. Created export list for ecpglib.

- Hopefully fixed some stuff that causes Windows builds to fail on

- In ecpg testing code, made new test also work without threading

- Removed pgsql/src/interfaces/ecpg/test/expected/thread-descriptor.stdout.diff.
No idea where this file came from.

- In ecpg, ITAGAKI Takahiro added thread-safe descriptor handling.

Tom Lane committed:

- In pgsql/src/backend/regex: regc_color.c, make dumpcolors() have
tolerable performance when using 32-bit chr, as we do (and upstream
Tcl doesn't). The loop limit might be subject to negotiation if
anyone ever tries to do regex debugging in Far Eastern languages,
but for now 1000 seems plenty. CHR_MAX was right out :-(

- Adjust some regex debugging printouts to not give wrong-format-width
warnings on a 64-bit machine. Noted while chasing a recent regex
bug report.

- Adjust regcustom.h so that all those assert() calls in the regex
package are converted to Postgres Assert() macros, instead of using
<assert.h> as formerly. No difference in production builds, but
--enable-cassert debug builds will get better coverage for regex

- Fix plperl and pltcl to include the name of the current function
when passing on errors from the language interpreter. (plpython
seems fairly OK about this already.) Per gripe from Robert

- In pgsql/doc/src/sgml/release.sgml, remove some cross-references
that don't seem to work in HISTORY generation ... we should figure
this out later ...

- Fix distprep and maintainer-clean targets so that ecpg's .def files
are made and removed at the correct times.

- Add .cvsignore files to suppress CVS gripes about ecpg .def files.

- Some desultory markup improvements in the new release notes.

- Results from buildfarm show that ecpglib was depending on
pg_strcasecmp, which evidently it got as an unofficial export from

- Keep the planner from failing on "WHERE false AND something IN
(SELECT ...)". eval_const_expressions simplifies this to just
"WHERE false", but we have already done pull_up_IN_clauses so the IN
join will be done, or at least planned, anyway. The trouble case
comes when the sub-SELECT is itself a join and we decide to
implement the IN by unique-ifying the sub-SELECT outputs: with no
remaining reference to the output Vars in WHERE, we won't have
propagated the Vars up to the upper join point, leading to "variable
not found in subplan target lists" error. Fix by adding an extra
scan of in_info_list and forcing all Vars mentioned therein to be
propagated up to the IN join point. Per bug report from Miroslav

- Stamp 8.3beta1, except in

- Update timezone data files to release 2007h of the zic database.
Might as well have the latest when we wrap 8.3beta1.

- In ecpg, DLL_DEFFILE should be defined when PORTNAME is win32, not
when it isn't, per the example of libpq/Makefile.

- In pgsql/src/backend/postmaster/bgwriter.c, change Assert() to a
plain test and elog, just to see if that works around the icc bug
exhibited by buildfarm member dugong.

- Second pass at 8.3 release notes: put items in a bit more logical
order where possible, add overview and incompatibilities lists,
minor cleanups. The SGML-ification still leaves much to be desired.

- Teach chklocale.c how to extract encoding info from Windows locale
names. ITAGAKI Takahiro

- Some editorial improvements for recently-added ALTER SEQUENCE/VIEW
documentation. Heikki and Tom

- In pgsql/src/interfaces/ecpg/ecpglib/descriptor.c, suppress compiler
warning in non-threaded build.

- Tweak recently-added tests to suppress scary-looking warnings on
64-bit machines about casts between pointers and integers of
different sizes. While they're harmless, we shouldn't expect users
to have to go through and figure that out for themselves.

- Minor improvements to hack for old OpenSSL libraries: avoid unused
variable warning on Windows, improve comment.

- In gsql/src/interfaces/ecpg/compatlib/Makefile, fix command for
fetching snprintf.c.

- First cut at 8.3 release notes. SGML markup is nonexistent, and the
'overview' and 'incompatibilities' summary lists remain to be
written. But I think all the raw info is there (indeed maybe too

- Cope with ERR_set_mark() and ERR_pop_to_mark() not existing in older
OpenSSL libraries --- just don't call them if they're not there.
This might possibly lead to misleading error messages, but we'll
just have to live with that.

- In pgsql/doc/src/sgml/catalogs.sgml, add catalogs.sgml documentation
for text search catalogs.

- In pgsql/doc/src/sgml/installation.sgml, add note warning against
use of pre-8.4 multithreaded Tcl.

- Avoid assuming that struct varattrib_pointer doesn't get padded by
the compiler --- at least on ARM, it does. I suspect that the
varvarlena patch has been creating larger-than-intended toast
pointers all along on ARM, but it wasn't exposed until the latest
tweak added some Asserts that calculated the expected size in a
different way. We could probably have fixed this by adding
__attribute__((packed)) as is done for ItemPointerData, but struct
varattrib_pointer isn't really all that useful anyway, so it seems
cleanest to just get rid of it and have only struct varattrib_1b_e.
Per results from buildfarm member quagga.

Magnus Hagander committed:

- In pgsql/src/interfaces/libpq/fe-secure.c, attempt to open
certificate file "manually" using fopen before trying BIO functions.
Helps problem with older versions of OpenSSL that lacks error stack
functions and would show an incorrect error message for
file-not-found-or-not-openable. The problem may still exist for
other errors, but file open error is by far the most common one.

- Build two more .DEF files for ecpg instead of using default ones.

- More detailed error msg (with stack trace) if a file copy fails in

- Use snprintf from libpgport in ecpg compatlib. Required since we
restricted exports from ecpglib.

- Fix commandlines for final two ECPG regression tests in

- Fix typo in pgsql/src/interfaces/ecpg/ecpglib/exports.txt.

- In pgsql/src/tools/msvc, build DEF file for libecpg instead of
generating a default one.

- Make ECPG regression tests run with -c only for array_of_struct.pgc
on MSVC. Fix strange nonstandard version of __stdcall specifyer in
thread tests on win32.

- Fix typo in pgsql/src/tools/msvc/

- Default to thread safety on, and support more CPU options. Also make
sure that a CPU option is actually chosen. Hiroshi Saito

- Use BIO functions to avoid passing FILE * pointers to OpenSSL
functions. This fixes potential crashes on old versions of OpenSSL
and the requirement on "Applink" in new versions when building with
MSVC and using different runtimes. Dave Page with fixes from me.

- In pgsql/src/interfaces/libpq/win32.mak, build with /GS on 64-bit to
work with modern Platform SDK. Hiroshi Saito

- Enable __FUNCTION__ on MSVC builds. Hannes Eder

D'Arcy J.M. Cain committed:

- Add some examples to pgsql/contrib/chkpass/README.chkpass.

- Fix a minor typo in pgsql/contrib/chkpass/README.chkpass.

Bruce Momjian committed:

- In pgsql/src/tools/pgcvslog, add comment about cvs branch numbers.

- Add pgcvslog '-d' capability to allow stripping of commit messages
that have back branch activity. This will be useful for creating
release notes for major releases.

- In pgsql/src/tools/pgcvslog, update pgcvslog text to simply

- Fixup for new pgcvslog feature.

- In pgsql/src/tools/pgcvslog, have pgcvslog mark back-branch commits
with "<back-patch>".

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Richard Rowell sent in two revisions of a patch to inline stable SQL
set returning UDFs.

Brendan Jurd sent in a patch to get rid of some redundant code by
creating a widely useful set of functions to convert between text and
C string in the backend.

Euler Taveira de Oliveira sent in an updated FAQ in Brazilian


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