Обсуждение: == PostgreSQL Weekly News - August 16 2009 ==

Поиск
Список
Период
Сортировка

== PostgreSQL Weekly News - August 16 2009 ==

От
David Fetter
Дата:
== PostgreSQL Weekly News - August 16 2009 ==

The first commitfest of the 8.5 cycle is coming to a close.  With
almost 40 patches committed and only 5 patches rejected outright,
PostgreSQL 8.5 development is even smoother and more productive than
8.4's was.

== PostgreSQL Product News ==

pgfincore 0.3, a tool for determining which pg files or parts are in
the OS cache, released.
http://pgfoundry.org/projects/pgfincore/

pgpool-II 2.2.3, a connection pooler and more, released.
http://pgfoundry.org/projects/pgpool/

== PostgreSQL Jobs for August ==

http://archives.postgresql.org/pgsql-jobs/2009-08/threads.php

== PostgreSQL Local ==

OpenSQL Camp will take place August 22-23, 2009 in St. Augustin,
Germany, close to Bonn and Cologne.
http://opensqlcamp.org/Events/2009/

The German PostgreSQL User Group will have a dev-room at FrOSCon on
Sunday, August 23, 2009.  The Call for Papers is open:
http://andreas.scherbaum.la/blog/archives/573-Call-for-Papers-fuer-den-PostgreSQL-Devroom-auf-der-FrOSCon-2009.html

The CfP for PyCon Argentina is open until June 29th, 2009 23:59 ART.
The conference itself will be in Beunos Aires on September 4-5 2009.
http://ar.pycon.org/2009/rfp/

Andreas (ads) Scherbaum will be teaching a "PostgreSQL for Corporate
Use" course at the adult education center in Magdeburg, Germany on
September 7-11, 2009.  Details below:
http://andreas.scherbaum.la/blog/archives/574-PostgreSQL-als-Bildungsurlaub.html

There will be a conference in Athens, Georgia, USA on September 19,
2009.  The CfP is open.
http://www.postgresqlconference.org/2009/pgday/athens

There will be a conference in Seattle, Washington, USA October 16-18,
2009.  The CfP is open.
http://www.postgresqlconference.org/2009/west

PGCon Brazil will be take place October 23-24 2009 at Unicamp in
Campinas, Sao Paulo state.  The CfP is open!
http://pgcon.postgresql.org.br/2009/chamadas.en.php

PGDay.EU 2009 will be at Telecom ParisTech in Paris, France on
November 6-7, 2009.  The CfP is out.  Submit!
http://www.pgday.eu/

OpenSQL Camp in Portland is looking for sponsors.  Make your travel plans now! :)
http://www.chesnok.com/daily/2009/07/29/opensql-camp-comes-to-portland-november-14-15-2009/

JPUG 10th Anniversary Conference has started its Request for
Proposals.  The conference is November 20-21, 2009 in Tokyo, Japan.
http://archives.postgresql.org/pgsql-announce/2009-05/msg00018.php

FOSDEM 2010 will be in Brussels on February 6-7, 2010.
http://www.fosdem.org/

== PostgreSQL in the News ==

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

PostgreSQL Weekly News is brought to you this week by David Fetter

Submit news and announcements by Sunday at 3:00pm Pacific time.
Please send English language ones to david@fetter.org, German language
to pwn@pgug.de, Italian language to pwn@itpug.org.

== Applied Patches ==

Andrew Dunstan committed:

- In pgsql/doc/src/sgml/ref/psql-ref.sgml, re-add documentation for
  --no-readline option of psql, mistakenly removed a decade ago.
  Backpatch to release 7.4.

Tom Lane committed:

- Extend EXPLAIN to support output in XML or JSON format.  There are
  probably still some adjustments to be made in the details of the
  output, but this gets the basic structure in place.  Robert Haas

- In pgsql/doc/src/sgml/func.sgml, adjust extract(epoch) example to
  clarify that it includes fractional seconds, per gripe from Richard
  Neill.  Also, add a cross-reference to the to_timestamp function.

- Support EEEE (scientific notation) in to_char().  Pavel Stehule,
  Brendan Jurd

- In pgsql/src/backend/commands/analyze.c, fix old bug in
  log_autovacuum_min_duration code: it was relying on being able to
  access a Relation entry it had just closed.  I happened to be
  testing with CLOBBER_CACHE_ALWAYS, which made this a guaranteed core
  dump (at least on machines where sprintf %s isn't forgiving of a
  NULL pointer).  It's probably quite unlikely that it would fail in
  the field, but a bug is a bug.  Fix by moving the relation_close
  call down past the logging action.

- Allow backends to start up without use of the flat-file copy of
  pg_database.  To make this work in the base case, pg_database now
  has a nailed-in-cache relation descriptor that is initialized using
  hardwired knowledge in relcache.c.  This means pg_database is added
  to the set of relations that need to have a Schema_pg_xxx macro
  maintained in pg_attribute.h.  When this path is taken, we'll have
  to do a seqscan of pg_database to find the row we need.  In the
  normal case, we are able to do an indexscan to find the database's
  row by name.  This is made possible by storing a global relcache
  init file that describes only the shared catalogs and their indexes
  (and therefore is usable by all backends in any database).  A new
  backend loads this cache file, finds its database OID after an
  indexscan on pg_database, and then loads the local relcache init
  file for that database.  This change should effectively eliminate
  number of databases as a factor in backend startup time, even with
  large numbers of databases.  However, the real reason for doing it
  is as a first step towards getting rid of the flat files altogether.
  There are still several other sub-projects to be tackled before that
  can happen.

- In pgsql/doc/src/sgml/.cvsignore, the html-stamp and man-stamp files
  also need to be cvsignore'd.

- In pgsql/src/backend/commands/tablecmds.c, improve error message for
  the case where a requested foreign key constraint does match some
  unique index on the referenced table, but that index is only
  deferrably unique.  We were doing this nicely for the
  default-to-primary-key case, but were being lazy for the other case.
  Dean Rasheed

- In pgsql/src/backend/optimizer/prep/prepunion.c, put back
  adjust_appendrel_attrs()'s code for dealing with RestrictInfo.  I
  mistakenly removed it last month, thinking it was no longer needed
  --- but it is still needed for dealing with joininfo lists.
  Fortunately this bit of brain fade hadn't made it into any released
  versions yet.

- Add a simple test case covering a join against an inheritance tree,
  since we're evidently not testing that at all right now :-(

- Repair breakage of Wisconsin benchmark due to change of command line
  syntax for standalone backends.  Although we probably ought to just
  remove this long-obsolete test case from our code, it seems
  worthwhile to document the issue and fix in CVS first.  Jeff Janes.

- In pgsql/doc/src/sgml/Makefile, make sure that 'make distclean'
  cleans out all files that are not meant to be shipped.  Also, allow
  'make clean' to remove intermediate working files.

- Remove Wisconsin benchmark files.  This test is clearly not being
  used anymore, since it's been broken for long periods of time
  without anyone noticing.  Per discussion, it's not worth keeping in
  our source tree.

- In pgsql/src/backend/catalog/pg_type.c, fix incorrect encoding-aware
  name truncation in makeArrayTypeName().  truncate_identifier won't
  do anything if the passed-in strlen is already less than
  NAMEDATALEN, which it always would be given the strlcpy usage.  This
  has been broken since the arrays-of-composite-types code went in.
  Arguably truncate_identifier is suffering from excessive
  optimization and should always process the string, but for the
  moment I'll take the more localized patch.  Per bug #4987.

- In pgsql/doc/src/sgml/func.sgml, fix imprecise documentation of
  random(): it never returns 1.0.  This was changed in 8.2 but the
  documentation was not corrected.  Per gripe from Sam Mason.

Magnus Hagander committed:

- In pgsql/src/tools/msvc/Project.pm, back-patch the multiple
  CPUs/cores when building on MSVC.  This only affects the C compiler
  step - we still only build one target at a time.

- Reserve the shared memory region during backend startup on Windows,
  so that memory allocated by starting third party DLLs doesn't end up
  conflicting with it.  Hopefully this solves the long-time issue with
  "could not reattach to shared memory" errors on Win32.  Patch from
  Tsutomu Yamada and Magnus Hagander, based on idea from Trevor
  Talbot.

Bruce Momjian committed:

- In pgsql/src/tools/fsync/test_fsync.c, adjust test_fsync code to be
  more sane.  Backpatch to 8.4.X.

- In pgsql/doc/src/sgml/ref/psql-ref.sgml, remove tab in SGML.

Alvaro Herrera committed:

- In pgsql/src/backend/utils/adt/formatting.c, refactor
  NUM_cache_remove calls in error report path to a PG_TRY block.  The
  code in the new block was not reindented; it will be fixed by
  pgindent eventually.

- In pgsql/doc/src/sgml/catalogs.sgml, fix number of columns declared
  for pg_user_mappings description table.

- In pgsql/doc/src/sgml/geqo.sgml, fix URL to "The Hitch-Hiker's Guide
  to Evolutionary Computation".  Per Andreas Wenk, Andres Freund and
  Rob Wultsh.  Thanks, Robert Haas, for the patch.

- In pgsql/doc/src/sgml/Makefile, refactor some $(JADE.tex.call)s.

- In pgsql/GNUmakefile.in, be able to easily figure out the target
  directory of "make dist".

Peter Eisentraut committed:

- In pgsql/doc/src/sgml/Makefile, simplify and speed up man page
  installation.

- In pgsql/doc/src/sgml/Makefile, remove unnecessary files from
  distribution.

- Add .cvsignore entries for documentation files.

- In pgsql/doc/src/sgml/installation.sgml, document the minimum
  required Python version.  It turns out that Python 2.2 is the oldest
  version that PL/Python compiles with, apparently related to the
  introduction of iterators.  Might as well document this.

- Split the plpython regression test into test cases arranged by
  topic, instead of the previous monolithic setup-create-run sequence,
  that was apparently inherited from a previous test infrastructure,
  but makes working with the tests and adding new ones weird.

- Augment test coverage in PL/Python, especially for error conditions.

- In pgsql/src/include/catalog/pg_type.h, remove stray character in
  type description.

- In pgsql/src/pl/plpython/plpython.c, domain support in PL/Python.
  When examining what Python type to convert a PostgreSQL type to on
  input, look at the base type of the input type, otherwise all
  domains end up defaulting to string.

- PL/Python regression tests for data type handling.  Add some checks
  on various data types are converted into and out of Python.  This is
  extracted from Caleb Welton's patch for improved bytea support, but
  much expanded.

- Remove the test case from PL/Python tests that depends on the
  platform's float output format.

- In pgsql/doc/src/sgml/plperl.sgml, clarify the documentation about
  PL/Perl nested subroutines, per Josh Berkus.

Michael Meskes committed:

- Made sure sqlca is reset for declare cursor in Informix mode as
  pointed out by Zoltan Boszormenyi.

Teodor Sigaev committed:

- Add prefix support for synonym dictionary.

== Rejected Patches (for now) ==

Stef Walter's patch to make "samehost" and "samenet" meaningful in
pg_hba.conf.  Non-portable.

== Pending Patches ==

Zoltan Boszormenyi sent in another revision of his ECPG patch for
cursors.

Magnus Hagander sent in a back-patch to 8.2 of the patch intended to
fix the "could not reattach to shared memory" on Windows.

Zoltan Boszormenyi sent in two more revisions of the SQLDA and
DESCRIBE patches.

Pierre Frederic Caillaud sent in another version of his table and
index compression patch.

Pierre Frederic Caillaud sent in a patch to speed up COPY operations.

Zoltan Boszormenyi sent in another patch to fix the fact that DECLARE
doesn't set/reset sqlca after DECLARE CURSOR in ECPG.

Zdenek Kotala sent in another revision of his patch to fix
libeditpreferred behavior on Solaris.

Alvaro Herrera sent in a part of Robert Haas's patch which
auto-generates schemapg.h.

Michael Paquier sent in another revision of his patch to allow pgbench
to launch shell commands.

Teodor Sigaev sent in new revisions of unaccent and filter_dictionary.

Zoltan Boszormenyi sent in another patch to fix ECPG's cursor
handling.

Peter Eisentraut sent in another revision of his plpythonu data type
conversion patch.

Jeff Davis sent in a patch to implement opportunistic tuple freezing
via a new GUC: vacuum_freeze_opportunistic_ratio.

ITAGAKI Takahiro sent in a patch to fix encoding issues in the console
and eventlog on Windows.