== PostgreSQL Weekly News - February 17 2013 ==

Поиск
Список
Период
Сортировка
От David Fetter
Тема == PostgreSQL Weekly News - February 17 2013 ==
Дата
Msg-id 20130218050246.GF6677@fetter.org
обсуждение исходный текст
Список pgsql-announce
== PostgreSQL Weekly News - February 17 2013 ==

== PostgreSQL Product News ==

Precog 1.1.0, a data science platform for PostgreSQL, released.
http://www.precog.com/postgresql

== PostgreSQL Jobs for February ==

http://archives.postgresql.org/pgsql-jobs/2013-02/threads.php

== PostgreSQL Local ==

PyPgDay will be held on March 13th at the Santa Clara Convention
Center, the first day of PyCon.  Info here:
http://wiki.postgresql.org/wiki/PyPgDay2013

PGDay NYC 2013 will be held on March 22, 2013 in New York City.
http://pgday.nycpug.org/

PG Day France is the major French-speaking PostgreSQL community event.
The deadline for sending proposals is Saturday, March 24, 2013 at
23:59 CEST.
http://pgday.fr/call_for_papers

PostgreSQL Session will be held on March 28th, 2013 in Paris,
France.  The Call for Papers is open.
http://www.postgresql-sessions.org/en/5/

PGCon 2013 will be held May 23-24 2013, in Ottawa at the University of
Ottawa.
http://www.pgcon.org/2013/

The 6th annual "Prague PostgreSQL Developers Day" conference,
organized by CSPUG (Czech and Slovak PostgreSQL Users Group), will be
held on May 30, 2013 at Faculty of Mathematics and Physics, Charles
University (Malostranske namesti 25, Prague).  The CfP is open until
April 14, 2013 <info AT p2d2 DOT cz>.  More information in Czech is at
http://www.p2d2.cz/

== 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.  Spanish language
to pwn@arpug.com.ar.

== Applied Patches ==

Heikki Linnakangas pushed:

- Fix checkpoint after fast promotion.  The intention was to request a
  regular online checkpoint immediately after end of recovery, when
  performing "fast promotion". However, because the checkpoint was
  requested before other backends were allowed to write WAL, the
  checkpointer process performed a restartpoint rather than a
  checkpoint.  Delay the RequestCheckPoint call until after recovery
  has truly ended, so that you get a real checkpoint.
  http://git.postgresql.org/pg/commitdiff/b669f416cee77ef9025b80f9c4201688578447d1

- Support unlogged GiST index.  The reason this wasn't supported
  before was that GiST indexes need an increasing sequence to detect
  concurrent page-splits. In a regular WAL- logged GiST index, the LSN
  of the page-split record is used for that purpose, and in a
  temporary index, we can get away with a backend-local counter.
  Neither of those methods works for an unlogged relation.  To provide
  such an increasing sequence of numbers, create a "fake LSN" counter
  that is saved and restored across shutdowns. On recovery, unlogged
  relations are blown away, so the counter doesn't need to survive
  that either.  Jeevan Chalke, based on discussions with Robert Haas,
  Tom Lane and me.
  http://git.postgresql.org/pg/commitdiff/62401db45c4feff9be296fa78a8bb7b9947d69de

- Update visibility map in the second phase of vacuum.  There's a high
  chance that a page becomes all-visible when the second phase of
  vacuum removes all the dead tuples on it, so it makes sense to check
  for that. Otherwise the visibility map won't get updated until the
  next vacuum.  Pavan Deolasee, reviewed by Jeff Janes.
  http://git.postgresql.org/pg/commitdiff/fdf9e21196a6f58c6021c967dc5776a16190f295

- Don't delete unarchived WAL files during crash recovery.  Bug
  reported by Jehan-Guillaume (ioguix) de Rorthais. This was
  introduced with the change to keep WAL files restored from archive
  in pg_xlog, in 9.2.
  http://git.postgresql.org/pg/commitdiff/c9cc7e05c6d82a9781883a016c70d95aa4923122

- Force archive_status of .done for xlogs created by
  dearchival/replication.  This is a forward-patch of commit
  6f4b8a4f4f7a2d683ff79ab59d3693714b965e3d, applied to 9.2 back in
  August. The plan was to do something else in master, but it looks
  like it's not going to happen, so let's just apply the 9.2 solution
  to master as well.  Fujii Masao
  http://git.postgresql.org/pg/commitdiff/c2f79ba2691a4863db53003f25538f8806ebd2db

- Better fix for "unarchived WAL files get deleted on crash recovery"
  bug.  Revert my earlier fix for the bug that unarchived WAL files
  get deleted on crash recovery, commit
  c9cc7e05c6d82a9781883a016c70d95aa4923122. We create a .done file for
  files streamed or restored from archive, so the WAL file recycling
  logic used during normal operation works just as well during archive
  recovery.  Per Fujii Masao's suggestion.
  http://git.postgresql.org/pg/commitdiff/1bd42cd70abdbc946ad64c3c8eaefed4bb8b1145

- Include previous TLI in end-of-recovery and shutdown checkpoint
  records.  This isn't used for anything but a sanity check at the
  moment, but it could be highly valuable for debugging purposes. It
  could also be used to recreate timeline history by traversing WAL,
  which seems useful.
  http://git.postgresql.org/pg/commitdiff/7803e9327db3788f68d820c19f4081afb79edd12

Peter Eisentraut pushed:

- Add noreturn attributes to some error reporting functions
  http://git.postgresql.org/pg/commitdiff/0cb1fac3b19f01025b63d2cdceabb8767185da28

- doc: Add make target to produce EPUB from DocBook
  http://git.postgresql.org/pg/commitdiff/ff64fd49ce91534ebbfd5774a8715b11bfc09b97

- pgindent: Fix order in instructions.  The previous order of steps
  didn't literally work, because git clean -fdx would delete the
  downloaded typedefs.list.  Also, pgindent needs to be called with a
  path when one is in at the top of the build tree.
  http://git.postgresql.org/pg/commitdiff/8e6c8da16a51e24a33bf4afeb311ca5d0ecd2b21

Alvaro Herrera pushed:

- Don't build libpgcommon_srv.a just yet.  It's empty, and some
  archivers do not support that case.
  http://git.postgresql.org/pg/commitdiff/0f980b0e17d95e77dc2822eb7855d072a5874d9a

- Rename "string" pstrdup argument to "in".  The former name collides
  with a symbol also used in the isolation test's parser, causing
  assorted failures in certain platforms.
  http://git.postgresql.org/pg/commitdiff/0e81ddde2c62ada7f818114ca961d80d42370e32

- Create libpgcommon, and move pg_malloc et al to it.  libpgcommon is
  a new static library to allow sharing code among the various
  frontend programs and backend; this lets us eliminate duplicate
  implementations of common routines.  We avoid libpgport, because
  that's intended as a place for porting issues; per discussion, it
  seems better to keep them separate.  The first use case, and the
  only implemented by this patch, is pg_malloc and friends, which many
  frontend programs were already using.  At the same time, we can use
  this to provide palloc emulation functions for the frontend; this
  way, some palloc-using files in the backend can also be used by the
  frontend cleanly.  To do this, we change palloc() in the backend to
  be a function instead of a macro on top of MemoryContextAlloc().
  This was previously believed to cause loss of performance, but this
  implementation has been tweaked by Tom and Andres so that on modern
  compilers it provides a slight improvement over the previous one.
  This lets us clean up some places that were already with localized
  hacks.  Most of the pg_malloc/palloc changes in this patch were
  authored by Andres Freund. Zoltán Böszörményi also independently
  provided a form of that.  libpgcommon infrastructure was authored by
  Álvaro.
  http://git.postgresql.org/pg/commitdiff/8396447cdbdff0b62914748de2fec04281dc9114

Tom Lane pushed:

- Create libpgcommon, and move pg_malloc et al to it libpgcommon is a
  new static library to allow sharing code among the various frontend
  programs and backend; this lets us eliminate duplicate
  implementations of common routines.  We avoid libpgport, because
  that's intended as a place for porting issues; per discussion, it
  seems better to keep them separate.  The first use case, and the
  only implemented by this patch, is pg_malloc and friends, which many
  frontend programs were already using.  At the same time, we can use
  this to provide palloc emulation functions for the frontend; this
  way, some palloc-using files in the backend can also be used by the
  frontend cleanly.  To do this, we change palloc() in the backend to
  be a function instead of a macro on top of MemoryContextAlloc().
  This was previously believed to cause loss of performance, but this
  implementation has been tweaked by Tom and Andres so that on modern
  compilers it provides a slight improvement over the previous one.
  This lets us clean up some places that were already with localized
  hacks.  Most of the pg_malloc/palloc changes in this patch were
  authored by Andres Freund. Zoltán Böszörményi also independently
  provided a form of that.  libpgcommon infrastructure was authored by
  Álvaro Herrera.
  http://git.postgresql.org/pg/commitdiff/8396447cdbdff0b62914748de2fec04281dc9114

- Fix contrib/pg_trgm's similarity() function for trigram-free
  strings.  Cases such as similarity('', '') produced a NaN result due
  to computing 0/0.  Per discussion, make it return zero instead.
  This appears to be the basic cause of bug #7867 from Michele
  Baravalle, although it remains unclear why her installation doesn't
  think Cyrillic letters are letters.  Back-patch to all active
  branches.
  http://git.postgresql.org/pg/commitdiff/9728eda7925b6d42621b38c48e91ef9ab8d90cbc

- Fix CVE-2013-0255 properly.  Revert commit
  ab0f7b6089fd215f6ce6081e2e222c38d643a526 (in HEAD only) in favor of
  the proper solution, which is to declare enum_recv() correctly in
  the system catalogs.  It should be declared to take type "internal"
  not "cstring".  Also improve the type_sanity regression test, which
  should have caught this typo, so that it actually would.  Most of
  the relevant checks on the signature of type I/O functions should
  not have been restricted to basetypes/pseudotypes, as they should
  apply to any type's I/O functions.
  http://git.postgresql.org/pg/commitdiff/71627f3d1964ef9831ea7997d2f4ac5617c718cc

- Invent pre-commit/pre-prepare/pre-subcommit events for xact
  callbacks.  Currently it's only possible for loadable modules to get
  control during post-commit cleanup of a transaction.  That doesn't
  work too well if they want to do something that could throw an
  error; for example, an FDW might need to issue a remote commit,
  which could well fail.  To improve matters, extend the existing APIs
  for XactCallback and SubXactCallback functions to provide new
  pre-commit events for this purpose.  The release notes will need to
  mention that existing callback functions should be checked to make
  sure they don't do something unwanted when one of the new event
  types occurs.  In the examples within our source tree,
  contrib/sepgsql was fine but plpgsql had been a bit too cute.
  http://git.postgresql.org/pg/commitdiff/fdaf44862beba24c12434d31df556fab25fd3ee7

Bruce Momjian pushed:

- Fix pg_upgrade log file cleanup code.  Recent pg_upgrade parallel
  improvements introduced a bug that prevented cleanup of per-database
  log files.
  http://git.postgresql.org/pg/commitdiff/74205266d4925b54bf1d77bae7b0e7f60f68840a

- pg_upgrade:  conditionally create cluster delete script.  If users
  create tablespaces inside the old cluster directory, it is
  impossible for the delete script to delete _only_ the old cluster
  files, so don't create a script in that case, and issue a message to
  the user.
  http://git.postgresql.org/pg/commitdiff/4765dd79219b9697d84f5c2c70f3fe00455609a1

- Warn about initdb using mount-points.  Add code to detect and warn
  about trying to initdb or create pg_xlog on mount points.
  http://git.postgresql.org/pg/commitdiff/17f15239325a88581bb4f9cf91d38005f1f52d69

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Jeff Janes sent in a patch to bgbench which allows any arbitrary
command to be executed upon the start up of each connection intended
for benchmarking.

Andrew Dunstan sent in another revision of a patch to add a JSON API.

Manlio Perillo sent in a patch against libpq to send a Describe Portal
message in PQsendPrepare.

Pavel Stehule and Dean Rasheed traded patches to fix the behavior of
the width specifier in the format function in cases of mixed
positional and ordered placeholders.

Michael Paquier sent in two more revisions of a patch to add REINDEX
CONCURRENTLY.

Amit Kapila sent in another revision of a patch to implement identity
projection.

Alvaro Herrera and Andres Freund traded patches to implement xlogdump.

Jonathan Rogers sent in a WIP patch to use BTRFS file cloning
facilities to speed up CREATE DATABASE operations.

Amit Kapila sent in another revision of a patch to allow changing
postgresql.conf settings via SQL.

David Fetter sent in two more revisions of a patch to add an optional
FILTER clause to aggregates.

Alvaro Herrera and Tomas Vondra traded patches to split stats file per
database.

Fujii Masao sent in another revision of a patch to prevent archiving
restored WALs.

Bruce Momjian sent in a patch to go with subtle hints about mounting
a PGDATA directories and similar at the root as opposed to a previous
version that looked for filesystem-specific things like "lost+found".

Kevin Grittner sent in another revision of a patch to implement
materialized views.

Andres Freund sent in an RfC patch to implement indirect TOAST
support.

Pavel Stehule sent in another revision of a patch to implement
function body checking for PL/pgsql.



В списке pgsql-announce по дате отправления:

Предыдущее
От: Fábio Telles Rodriguez
Дата:
Сообщение: PGBR2013 - Call for papers
Следующее
От: Pavel Golub
Дата:
Сообщение: PostgresDAC v2.9.3 is immediately available