Skip to content

Wöchentlicher PostgreSQL Newsletter - 21. März 2010

Der Originalartikel befindet sich unter:

== Wöchentlicher PostgreSQL Newsletter - 21. März 2010 ==

Bugfix Releases 8.4.3, 8.3.10, 8.2.16, 8.1.20, 8.0.24 und 7.4.28
sind erschienen. Schnell Upgraden!

== PostgreSQL Produkt Neuigkeiten ==

dtester 0.1, ein ereignisgesteuertes Testwerkzeug, ist erschienen.

pgbouncer 1.3.2 ist erschienen.

pgreplay 0.9.0 Beta, ein Programm zum Abspielen von geloggten
SQL-Befehlen, ist erschienen.

== PostgreSQL 9.0 Feature der Woche ==

hstore hat nicht länger ein Limit von 64kB für die Schlüssellänge,
außerdem ist jetzt Btree und Hash Operator Klassen Support vorhanden.
Das ermöglicht GROUP BY, DISTINCT ect.

== PostgreSQL Jobs im März ==

== PostgreSQL Lokal ==

JDCon East wird vom 25. bis 28. März 2010 in Philadelphia, PA, USA

Die San Francisco PostgreSQL Uergruppe wird ein Testfest am Samstag dem
3. April von 11 Uhr bis 18 Uhr veranstalten. Es wird Live Videos geben.
Hilf mit, dies zu einem weltweiten Event zu machen!

Linuxfest Nordwest 2010 findet in Bellingham, Washington, USA am
24. und 25. April statt. Vortragsreihen, Stände und Sponsoring
sind verfügbar.

Andreas (ads) Scherbaum hält einen Kurs "PostgreSQL im
Unternehmenseinsatz" an der VHS Magdeburg, Deutschland, vom 03. bis 07.
Mai 2010. Details unter:

PgCon 2010 findet vom 20.-21. Mai 2010 in Ottawa statt mit Tutorials
vorher am 18. und 19.

Der CfP für OSBridge ist eröffnet! OSBridge findet vom 1. bis 4.
Juni 2010 in Portland, Oregon statt.

OSCON wird in Portland, Oregon vom 19. bis 23. Juli 2010 stattfinden.

== PostgreSQL in den News ==

Planet PostgreSQL:

Dieser wöchentliche PostgreSQL Newsletter wurde erstellt von David

Sende Neuigkeiten und Ankündigungen bis Sonntag, 15 Uhr Pazifischer
Zeit. Bitte sende englische Beiträge an, deutsche an, italienische an

== Angewandte Patches ==

Simon Riggs committed:

- In pgsql/src/backend/access/transam/xlog.c, remove incorrect comment
  from GetWriteRecPtr(): the return value is always correct, as
  described in comments at start of xlog.c

- In pgsql/doc/src/sgml/func.sgml, document that trig functions
  accept/return values in radians.

- In pgsql/doc/src/sgml/func.sgml, fix typo in math function docs,
  spotted by Heikki Linnakangas.

- In pgsql/doc/src/sgml/protocol.sgml, fix typo in streaming
  replication protocol docs.

- Add vacuum_defer_cleanup_age to postgresql.conf.sample.

- Reset btpo.xact following recovery of btree delete page.  Add
  btpo_xact field into WAL record and reset it from there, rather than
  using FrozenTransactionId which can lead to some corner case bugs.
  Problem report and suggested route to a fix from Heikki Linnakangas,
  details by me.

- Adjust comment in .history file to match recovery target specified.
  Comment present since 8.0 was never fully meaningful, since two
  recovery targets cannot be specified.  Refactor recovery target type
  to make this change and associated code easier to understand.  No
  change in function.  Bug report arising from internal support

- In pgsql/src/include/access/xlog_internal.h, update XLOG_PAGE_MAGIC
  to recognise WAL format changes.

- In pgsql/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c,
  minor tweaks on libpqrcv_connect(): ensure conninfo_repl[] is
  correctly sized and expand comment to explain otherwise undocumented
  use of replication connection parameter.

- Add connection messages for streaming replication.  log_connections
  was broken for a replication connection and no messages were
  displayed on either standby or primary, at any debug level.
  Connection messages needed to diagnose session drop/reconnect
  events.  Use LOG mode for now, discuss lowering in later releases.

- In pgsql/doc/src/sgml/high-availability.sgml, clarify docs about
  database parameter in streaming replication primary_conninfo.  Docs
  were unclear on whether or not database=replication was required,
  nor did they mention the FATAL error this causes if database
  parameter is mentioned explicitly, whatever its value.

- In pgsql/src/include/access/nbtree.h, further corrections of
  mismatching struct and btree SizeOf macros.  In this case,
  correction is to remove now unused fields from struct.  Since these
  were unused and full of garbage anyway, no version change.

Heikki Linnakangas committed:

- In pgsql/src/backend/replication/walsender.c, throw a nicer error
  message if a standby server attempts to connect while the master is
  still in recovery. We don't support cascading slaves yet.  Patch by
  Fujii Masao, with slightly changed wording.

- Add restartpoint_command option to recovery.conf.  Fix bug in %r
  handling in recovery_end_command, it always came out as 0 because
  InRedo was cleared before recovery_end_command was executed.  Also,
  always take ControlFileLock when reading checkpoint location for %r.
  The recovery_end_command bug and the missing locking was present in
  8.4 as well, that part of this patch will be backported separately.

- In pgsql/src/backend/access/transam/xlog.c, fix bug in %r handling
  in recovery_end_command, it always came out as 0 because InRedo was
  cleared before recovery_end_command was executed.  Also, always take
  ControlFileLock when reading checkpoint location for %r.  That
  didn't matter before, but in 8.4 bgwriter is active during recovery
  and can modify the control file concurrently.

Tom Lane committed:

- In pgsql/doc/src/sgml/ref/create_index.sgml, fix incorrect example
  in CREATE INDEX reference page, per Josh Kupershmidt.  Also fix and
  uncomment an old example of creating a GIST index, and make a couple
  of other minor editorial adjustments.

- Pass incompletely-transformed aggregate argument lists as separate
  parameters to transformAggregateCall, instead of abusing fields in
  Aggref to carry them temporarily.  No change in functionality but
  hopefully the code is a bit clearer now.  Per gripe from
  Gokulakannan Somasundaram.

- In pgsql/doc/src/sgml/func.sgml, fix missing parentheses for
  current_query(), per bug #5378.  Also make a couple other minor
  editorial improvements.

- In pgsql/src/include/access/nbtree.h, fix oversight in btpo.xact
  patch; it was in fact installing garbage in the xact field on
  replay, due to not writing out all the data in the wal log struct.

- Modify error context callback functions to not assume that they can
  fetch catalog entries via SearchSysCache and related operations.
  Although, at the time that these callbacks are called by elog.c, we
  have not officially aborted the current transaction, it still seems
  rather risky to initiate any new catalog fetches.  In all these
  cases the needed information is readily available in the caller and
  so it's just a matter of a bit of extra notation to pass it to the
  callback.  Per crash report from Dennis Koegel.  I've concluded that
  the real fix for his problem is to clear the error context stack at
  entry to proc_exit, but it still seems like a good idea to make the
  callbacks a bit less fragile for other cases.  Backpatch to 8.4.  We
  could go further back, but the patch doesn't apply cleanly.  In the
  absence of proof that this fixes something and isn't just paranoia,
  I'm not going to expend the effort.

- In pgsql/src/backend/storage/ipc/ipc.c, clear error_context_stack
  and debug_query_string at the beginning of proc_exit, so that we
  won't try to attach any context printouts to messages that get
  emitted while exiting.  Per report from Dennis Koegel, the context
  functions won't necessarily work after we've started shutting down
  the backend, and it seems possible that debug_query_string could be
  pointing at freed storage as well.  The context information doesn't
  seem particularly relevant to such messages anyway, so there's
  little lost by suppressing it.  Back-patch to all supported
  branches.  I can only demonstrate a crash with log_disconnections
  messages back to 8.1, but the risk seems real in 8.0 and before

Peter Eisentraut committed:

- Update broken and permanently moved links.

- Make typography consistent in the GRANT and REVOKE documentation.

- In pgsql/src/interfaces/libpq/fe-connect.c, fix peculiar,
  untranslatable message concatenation attempt

- Message style tuning for PL/Perl(U).

- Don't link PL/Python against LOCALMODLIBS.  This variable is
  apparently only for Python internally.  In newer releases of Python
  this variable pulls in more and more libraries that users are less
  likely to have, leading to potential build failures.

- Use data-type specific conversion functions also in plpy.execute.
  In PLy_spi_execute_plan, use the data-type specific
  Python-to-PostgreSQL conversion function instead of passing
  everything through InputFunctionCall as a string.  The equivalent
  fix was already done months ago for function parameters and return
  values, but this other gateway between Python and PostgreSQL was
  apparently forgotten.  As a result, data types that need special
  treatment, such as bytea, would misbehave when used with

- In pgsql/src/pl/plperl/plperl.c, message style tuning.

- Prevent the injection of invalidly encoded strings by PL/Python into
  PostgreSQL with a few strategically placed pg_verifymbstr calls.

- Also print the libpq error message when lo_create or lo_open fails.

- Message tuning.

Magnus Hagander committed:

- In pgsql/doc/src/sgml/config.sgml, typo fixes.  Fujii Masao.

Bruce Momjian committed:

- In pgsql/src/tools/RELEASE_CHANGES, mention way to get commit
  details for release notes.

- In pgsql/doc/src/sgml/release.sgml, update sgml release note markup

- In pgsql/doc/src/sgml/release-9.0.sgml, create 9.0 release notes;
  keep 9.0-alpha release notes in place.

- Move server-side languages up one section in the 9.0 release notes.

- In 9.0 release notes, move libpq/ecpg up into their own sections,
  like I did with server-side languages.

- Add links to documentation sections in 9.0 release notes.  Also
  update tagging instructions, and add id tags to a few documentation

- Add more 9.0 release note documentation links.

- Remove 9.0 release notes xref's to HISTORY.html can be built.
  Document this restriction.

Robert Haas committed:

- In pgsql/src/backend/commands/tablecmds.c, forbid renaming columns
  of objects whose column names are system-generated.  KaiGai Kohei,
  with adjustments to the comments.

Michael Meskes committed:

- In src/interfaces/ecpg/preproc/ecpg.trailer, fixed ecpg parser to
  allow more than one C preprocessor command inside a declare section.

- ECPG only copied #include statements instead of processing them
  according to commandline option "-i". This change fixes this and
  adds a test case. It also honors #include_next, although this is
  probably never used for embedded SQL.

- In pgsql/src/interfaces/ecpg/ecpglib/prepare.c, correctly name
  functions in debug output in ecpglib. When the functions were
  refactored the debug output wasn't adjusted.

- Adjusted regression test results to the change I made in debug
  output for ecpglib.

- ECPG's parser now accepts and handles variables as arguments for the
  FREE command.  Informix allows variables as argument to the embedded
  SQL command FREE. Given that we only allow freeing cursors via FREE
  for compatibility reasons only we should do the same.

- In pgsql/src/tools/msvc/ecpg_regression.proj, adding special command
  line option that is now needed for the one ecpg regression test that
  was changed.

== Abgelehnte Patches (bis jetzt) ==

No one was disappointed this week :-)

== Eingesandte Patches ==

Pavel Stehule sent in four revisions of a patch to reduce the memory
usage in ispell dictionaries.

ITAGAKI Takahiro and Greg Smith sent in patches to implement
per-thread log files for pgbench -l.

Heikki Linnakangas sent in a patch which adds a restartpoint_command
option to recovery.conf which is executed at every restartpoint in
streaming replication.  It is analogous to the recovery_end_command,
which cleans up old WALs, and like recovery_end_command, takes a
parameter %r which tells it about the oldest WAL to retain.

KaiGai Kohei sent in a patch for 9.1 which refactors access control

ITAGAKI Takahiro sent in another revision of the patch to fix the
locale issue on Windows.

Alvaro Herrera sent in a patch to deal with the RESET ALL access
control issue.

Yeb Havinga sent in a patch which changes EXPLAIN output to show the
actual parameters.

Heikki Linnakangas sent in a patch to keep trying to make progess in
recovery in standby mode by attempting to restore files first from
archive, then pg_xlog, then streaming from master.

Tim Landscheidt sent in a patch to clarify the generate_subscripts()


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