== Wöchentlicher PostgreSQL Newsletter - 1. Januar 2007 ==

From: Andreas 'ads' Scherbaum <adsmail(at)wars-nicht(dot)de>
To: "pgsql-de-allgemein(at)postgresql(dot)org" <pgsql-de-allgemein(at)postgresql(dot)org>
Cc: "pgusers(at)postgres(dot)de" <pgusers(at)postgres(dot)de>
Subject: == Wöchentlicher PostgreSQL Newsletter - 1. Januar 2007 ==
Date: 2007-01-03 00:49:56
Message-ID: 20070103014956.5a0f105c.adsmail@wars-nicht.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein


Der Originalartikel befindet sich unter: http://people.planetpostgresql.org/dfetter/index.php?/archives/98-PostgreSQL-Weekly-News-January-01-2007.html

== Wöchentlicher PostgreSQL Newsletter - 1. Januar 2007 ==

Ein frohes neues Jahr vom wöchentlichen PostgreSQL Newsletter!

Chad Wagner hat einige Foren zusammengestellt, um über PostgreSQL zu diskutieren.
http://www.postgresqlforums.com/forums/

Hier sind einige Instruktionen, um einen Sun Cluster mit PostgreSQL zu installieren.
http://docs.sun.com/app/docs/doc/819-5578?q=+postgresql

== PostgreSQL Produkt Neuigkeiten ==

phpPgAdmin 4.1-Beta-1 erschienen.
http://phppgadmin.sourceforge.net

pgadmin3 1.6.1 RPMs für Fedora Core 6 und 7 wurden erstellt. Sie sind auf der
PostgreSQL FTP Seite zu finden.

postgis 1.2.0 ist jetzt in Fedora Core Extras 6.

== PostgreSQL Lokal ==

Die Italienische PostgreSQL Community wird einen PostgreSQL Tag im
Sommer abhalten. Bookmarke den folgenden Link, um teilzunehmen.
http://www.pgday.it

Der Wöchentliche PostgreSQL Newsletter sendet ein herzliches Willkommen
an die Indonesische PostgreSQL Community.
http://tech.groups.yahoo.com/group/postgresql_indo/

Gavin Sherry veranstaltet eine PostgreSQL Minikonferenz in Sydney am
Dienstag dem 16. Januar 2007.
http://lca2007.linux.org.au/Miniconfs/PostgreSQL Wenn du teilnehmen
möchtest, maile gavin AT alcove . com . au

== PostgreSQL in den News ==

Planet PostgreSQL: http://www.planetpostgresql.org/

General Bits, Archive und gelegentliche News Artikel:
http://www.varlena.com/GeneralBits/

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

== Angewandte Patches ==

ISHII Tatsuo checkte ein:

- In pgsql/contrib/pgbench/pgbench.c, nutze srandom() statt srand(). pgbench ruft random() später auf, darum sollte srandom() benutzt werden. Auf den meisten Plattformen ist srandom() identisch zu srand(), so das der Bug nur Windows User betrifft. Laut Bugreport von Akio Ishida.

Teodor Sigaev checkte ein:

- In pgsql/contrib/tsearch2/dict_thesaurus.c, beseitige Speicher Reallokation Fehler.

Tom Lane checkte ein:

- Problem in meinen Operator-Family Änderungen gefunden: beim Holen von pg_opclass durch LookupOpclassInfo() habe ich pg_opclass_oid_index in einen kritischen System Index umgeändert. Jedoch kann das Problem nur auftreten beim ersten Versuch des Backends, die opclass Daten zu laden und dann auch nur, wenn pg_internal.init erfolgreich geladen war und einen relcache Flush auftrat. Dies machte es unmöglich den Fehler in seriellen Tests zu reproduzieren und auch nur sehr schwer bei parallelen Tests. Memo an mich: wenn Cache Löschen Szenarios betrachtet werden, muss der interne Cache von LookupOpclassInfo ebenfalls deaktiviert werden.

- Unterstütze Modifier für User-definierte Typen und packe das meiste Wissen über typmod Darstellungen für Standard Typen in Type-spezifische typmod I/O-Funktionen. Von Teodor Sigaev, mit einigen Änderungen von Tom Lane.

- Magnus Hagander sandte einen Patch der Unterstützung für das kürzlich hinzugefügte XML Backend im MSVC Build hinzufügt. Der meiste Configteil war bereits in contrib/xml2 vorhanden, aber es war notwendig, die Includes und Defines für das Backend auch hinzuzufügen.

- Magnus Haganders Patch um Unterstützung für XML Build Optionen zu den MSVC Build Scripts hinzuzufügen.

- Fixe mehrfache Fehlerstellen im letzten XML Patch.

- Repariere btrees initiales ScanKey Bearbeiten um redundante oder gegensätzliche Keys entdecken zu können, auch in Cross-Datentyp Szenarien. Dies ist ein anderer Vorteil der opfamily Änderungen: wir können die benötigten Vergleichsoperatoren jetzt finden.

- Entferne Warnung über Vermeidung von Cross-Type Operatoren in Contraints die für Constraint Ausschluß vorgesehen waren. Wir können solche Flle nun beweisen ...

- Aktiviere btree_predicate_proof() um Beweise für die Beteiligung von Cross-Data-Type Eigenschaften zu erzeugen. Es sieht so aus, als sei das meiste Zeug schon im letzten Commit gewesen, wir müssten lediglich die Schleusen öffnen.

- In tsearch2, addiere einen Schutz um Coredumps zu vermeiden, wenn Version 8.2 von rank_cd() mit der SQL Definition von Version 8.1 genutzt wird. Laut Bugreport von Rajesh Kumar Mallah, so ein DBA Fehler sieht nicht unwahrscheinlich aus und die Kosten für das Prüfen sind nicht sehr hoch verglichen mit den Kosten für das Ausführen der Funktion. (Es wäre besser gewesen, wenn der C Name der Funktion geändert worden wäre so das sie nicht von der alten SQL Definition aufgerufen werden kann, aber nun ist es zu spät für den 8.2 Branch.)

- In psql, rufe fflush für die \o Datei auf, wenn gegeben, nach jedem Backslash Befehl.
Wir tun dies bereits für herkömmliche SQL Befehle, so sieht es konsistent aus, dies auch für Backslash Befehle zu tun. Von Rajesh Kumar Mallah.

- export.list Änderungen zurücksetzen für genauere Studien.

- Nutze eine mehr Rückwärtskompatible Syntax für exports.list unter Linux. Von Thorkil Olesen.

- Verbessere den Memory Management Code um ineffektives verhalten zu vermeiden wenn ein Kontext eine kleine maxBlockSize hat: die maximale Request Größe die wir als einen "chunk" behandeln muss limitiert werden um in maxBlockSize zu passen. Andernfalls runden wir die Request Größe auf das nächste Vielfache von 2 auf, verbrauchen Speicher, was ein bischen sinnlos ist wenn wir die Blöcke nicht groß genug machen, um zusätzliche Sachen darin zu speichern. Das Beispiel dafür ist das lokale Buffermanagement, welches wiederholt 8k Blöcke (ein BLCKSZ Buffer) in TopMemoryContext anfordert, welches eine maxBlockSize von 8k hat, weil die meisten Teilanforderungen dort klein sind. Dies führt dazu, das jeder lokale Buffer eigentlich 16k Speicher verbraucht, was sich aufsummiert, wenn Tausende davon genutzt werden. Ich neige dazu, localbuf.c zu ändern um die Requests zu sammeln, dies würde dieses einzelne Fehlverhalten zu verhindern, aber das Hauptproblem zu beseitigen sieht auch sinnvoll aus.

- In psql, printe kombinierte Zeichen (solche die eine Nulllänge bei PQdsplen() haben) normal, anstatt sie mit \uXXXX Sequenzen zu ersetzen. Nimm an, das sie in Fakt Null Zeichen auf dem Bildschirm für das Formatieren verbrauchen. Von Michael Fuhr und folgender Diskussion.

- In der Dokumentation für Rules, nutze eine FROM Klausel in den Beispiel UPDATE Befehlen wo dies angemessen ist. Entferne auch ein lange Zeit überfälliges Statement dass da keine Prüfung für unendliche Rekursion in View Rules ist.

- Repariere kaputtes Markup in der Monitorung Dokumentation.

- Repariere Fehler beim Zugriff auf einen bereits freigegebenen Tuple Zeiger in einem Plan der HashAggregate über einem SubqueryScan nutzt (dies ist ein bekannter Fall, da können noch mehr sein). Dieser Bug ist in Releases vor 8.2 nur verborgen, da diese nicht versuchen auf tupletable Slots während ExecDropTupleTable zuzugreifen. Der letzte kleinste Fix sieht so aus, dass Subqueries sich den Speicherkontext mit dem Parent Queries teilen, so das tupdescs die gleiche Lebensdauer haben wie der Parent Query. Da sind Kommentare im Code um zu vergegenwärtigen das noch weiter gegangen werden kann und gar kein eigener EState für den Child gebraucht wird, aber dies erfordert weiteres Überdenken für Executor Zugriffe auf die Range Tabellen und dies mag ich derzeit nicht angehen. Laut Bugreport von Jean-Pierre Pelletier.

- Repariere Bug #2839: die verschiedenen ExecReScan Funktionen müssen ps_TupFromTlist in Planknoten zurücksetzen, wenn sie es benutzen. Dies wurde bereits richtig in Join Knoten und Ergebnis Knoten genutzt aber nicht in den Relation-Scan Knoten. Dieser Fehler würde zu falschen Ergebnissen führen wenn eine Set-Returning Funktion in der Zielliste eines Subqueries auftaucht, als Beispiel in einem EXISTS(). Dieser Bug war seit jeher vorhanden :-( ... erstaunlich das er nie zuvor berichtet wurde.

- Repariere Bug #2836: SPI_execute_plan lieferte Null zurück, wenn keiner der Querytrees als canSetTag markiert wurde. Während es selbstverständlich richtig ist das letzte Resultset zurückzuliefern, das als canSetTag markiert ist, war es weniger klar, was zu tun ist wenn keiner davon da war. Da plpgsql sich beschwert wenn Null zurückgeliefert wird, ist das 8.2.0 Verhalten nicht gut. Ich habe es repariert indem ich den vorherigen Zustand wiederhergestellt habe, wo das letzte Query Ergebnis zurückgeliefert wird, wenn keine canSetTag Queries vorhanden sind.

- Enferne falsches Semikolon in einem PL/PgSQL Beispiel, von Joachim Wieland.

Bruce Momjian checkte ein:

- Klärende Worte wann ctid geändert wird bei VACUUM FULL.

- Addiere TLS Thread URL zur TODO:
http://archives.postgresql.org/pgsql-hackers/2006-12/msg01213.php

- Entferne missverstandenen TODO: "Addiere ein GUC um zu kontrollieren ob BEGIN in einer Transaktion soll die Transaktion abbrechen."

- Entferne von TODO, "verschiebe GPL-lizensiertes /contrib/userlock und
/contrib/dbmirror/clean_pending.pl" da sie komplett sind.

- Räume pgindent Verhalten für Kommentare nach einem 'else' auf indem mehrzeilige Kommentare in die nächste Zeile verschoben werden.

- In den Docs, nutze "dead" statt "expired" für vacuum-fähige Zeilen.

Peter Eisentraut checkte ein:

- De-Escape XML namen beim Reverse-Kompilieren von XML Ausdrücken.

- Addiere Sende und Empfang Funktionen für XML Typ.

- Handhabe Inhalt und Dokument Optionen in xmlparse() richtig.

== Abgelehnte Patches (bis jetzt) ==

Niemand wurde diese Woche enttäuscht :-)

== Schwebende Patches ==

Euler Taveira de Oliveira sandte einen Patch der dir erlaubt das xlog Verzeichnis zum initdb Zeitpunkt anzugeben. Er benutzt Symlinks um dies zu bewerkstelligen und erstellt oder setzt zugriffsrechte passend für das Verzeichnis.

Dhanaraj M sandte einen Patch ein der es erlaubt, die Bezeichner Länge mittels einer configure Option zu ändern.

ITAGAKI Takahiro sandte einen Patch für den TODO Eintrag "erstelle eine Bitmap der Seiten, die Vacuum benötigen" (aka Toter Platz Karte) ein.

Albert Cervera Areny sandte eine neue Version seines Patches der Tablespaces für temporäre Objekte und Sort Dateien ermöglicht.

Simon Riggs sandte zwei weitere Revisionen seines pg_standby Patches.

Andrew Dunstan sandte einen Patch für pg_ctl ein der es core dumpen lässt.

Magnus Hagander sandte seinen work-in-progress Patch um pg_regress zu ermöglichen, komplett ausserhalb von msys unter Win32 zu laufen.

Magnus Hagander sandte einen einzeiligen Patch für src/tools/msvc/Project.pm der die Möglichkeit addiert um defines zu handhaben, die Textwerte setzen - " muss in XML gequotet werden.

--
Andreas 'ads' Scherbaum

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Andreas 'ads' Scherbaum 2007-01-09 02:04:24 == Wöchentlicher PostgreSQL Newsletter - 7. Januar 2007 ==
Previous Message Wolfram Wahlich 2006-12-28 13:27:00 Re: Postgres Server - Zugriff?