== PostgreSQL Weekly News - October 13 2013 == - Mailing list pgsql-announce

From David Fetter
Subject == PostgreSQL Weekly News - October 13 2013 ==
Date
Msg-id 20131014052342.GB25098@fetter.org
Whole thread Raw
List pgsql-announce
== PostgreSQL Weekly News - October 13 2013 ==

PostgreSQL 9.3.1, 9.2.5, 9.1.10, 9.0.14, and 8.4.18 bug fix releases
are out.  Upgrade at the next scheduled down time unless you are
directly affected by the issues below.
http://www.postgresql.org/about/news/1487/

The second Commitfest of the 9.4 cycle will end at end-of-day October
15, 2013.  Review those patches!

The international CfP for Ecudorian PostgreSQL Day, part of the
International Meeting of Free Software in Quito, Ecuador, is open.
Write ecpug <AT> postgresql <DOT> org.  Details (Spanish language)
below:
https://wiki.postgresql.org/wiki/PGDay_Ecuador_2013

== PostgreSQL Product News ==

pgAdmin3 v1.18.1 a multi-platform stand-alone GUI administration tool, released.
http://www.pgadmin.org/development/changelog.php

PgToolkit v1.0.0, which includes a tool to reduce table bloat in
PostgreSQL, released
https://github.com/grayhemp/pgtoolkit

== PostgreSQL Jobs for October ==

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

== PostgreSQL Local ==

The Italian PGDay (PGDay.IT) will be held on October the 25th in
Prato, Tuscany, Italy, at Monash University Center.
To register to the event or get information about the accepted talks
and schedule please see the official web site: http://2013.pgday.it

The PostgreSQL Conference China for 2013 will be held October 26-27,
2013 in Hangzhou.  Chinese language information here:
https://wiki.postgresql.org/wiki/Pgconf_cn2013
Registration:
http://bbs.pgsqldb.com/client/bm.php

pgconf.EU 2013 will be held on Oct 29-Nov 1, 2013 at the Conrad Hotel
in downtown Dublin, Ireland.  Registration is open.
http://2013.pgconf.eu/

PGConf.DE 2013 will be held November 8th, 2013, at the Rhineland
Industrial Museum in Oberhausen.  The CfP is open through September
15, 2013.
http://2013.pgconf.de/

The fourth edition of the Argentinian PostgreSQL Day will be held on
November 14 2013 in Buenos Aires, Argentina.
http://wiki.postgresql.org/wiki/PGDay_Argentina_2013

PGDay Cuba will be in November, 2013.
http://postgresql.uci.cu/


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

Kevin Grittner pushed:

- Eliminate xmin from hash tag for predicate locks on heap tuples.  If
  a tuple was frozen while its predicate locks mattered, read-write
  dependencies could be missed, resulting in failure to detect
  conflicts which could lead to anomalies in committed serializable
  transactions.  This field was added to the tag when we still thought
  that it was necessary to carry locks forward to a new version of an
  updated row.  That was later proven to be unnecessary, which allowed
  simplification of the code, but elimination of xmin from the tag was
  missed at the time.  Per report and analysis by Heikki Linnakangas.
  Backpatch to 9.1.
  http://git.postgresql.org/pg/commitdiff/c01262a82484106111a81dca8c922fd5670b644d

- Allow drop-index-concurrently-1 test to run at any isolation level.
  It previously reported failure at REPEATABLE READ and SERIALIZABLE
  transaction isolation levels for make installcheck.
  http://git.postgresql.org/pg/commitdiff/31a877f18bdf60dd1dfe92e7502469ed4c40d75b

- Add record_image_ops opclass for matview concurrent refresh.
  REFRESH MATERIALIZED VIEW CONCURRENTLY was broken for any matview
  containing a column of a type without a default btree operator
  class.  It also did not produce results consistent with a non-
  concurrent REFRESH or a normal view if any column was of a type
  which allowed user-visible differences between values which compared
  as equal according to the type's default btree opclass.  Concurrent
  matview refresh was modified to use the new operators to solve these
  problems.  Documentation was added for record comparison, both for
  the default btree operator class for record, and the newly added
  operators.  Regression tests now check for proper behavior both for
  a matview with a box column and a matview containing a citext
  column.  Reviewed by Steve Singer, who suggested some of the doc
  language.
  http://git.postgresql.org/pg/commitdiff/f566515192461acd8d9c232f48ddac3fc965cfd8

- Fix bug in record_image_ops on big endian machines.  The buildfarm
  pointed out the problem.  Fix based on suggestion by Robert Haas.
  http://git.postgresql.org/pg/commitdiff/15e46fd1dd77d908d73c48d601694a6809d18976

- Fix several possibly non-portable gaffs in record_image_ops.  Sparc
  machines in the buildfarm were made happy by the previous fix, but
  PowerPC machines still are still failing.  Hopefully this will cure
  that.
  http://git.postgresql.org/pg/commitdiff/4cbb646334b3b998a29abef0d57608d42097e6c9

Robert Haas pushed:

- plpgsql: Add new option print_strict_params.  This option provides
  more detailed error messages when STRICT is used and the number of
  rows returned is not one.  Marko Tiikkaja, reviewed by Ian Lawrence
  Barwick
  http://git.postgresql.org/pg/commitdiff/689746c045b169edbc694d6cf9176fe5f6c0b264

- Make DISCARD SEQUENCES also discard the last used sequence.
  Otherwise, we access already-freed memory.  Oops.  Report by Michael
  Paquier.  Fix by me.
  http://git.postgresql.org/pg/commitdiff/16a906f535082fcf3d8c6732d8e941e037bc6d5e

- Allow dynamic allocation of shared memory segments.  Patch by myself
  and Amit Kapila.  Design help from Noah Misch.  Review by Andres
  Freund.
  http://git.postgresql.org/pg/commitdiff/0ac5e5a7e152504c71ce2168acc9cef7fde7893c

- Fix incorrect use of shm_unlink where unlink should be used.  Per
  buildfarm.
  http://git.postgresql.org/pg/commitdiff/4b7b9a790405f5826ddfc7e9884805edd5396d75

- initdb: Select working dynamic shared memory implementation.  If
  POSIX shared memory is supported and works, we prefer it.
  Otherwise, we prefer System V, except on Windows, where we use the
  implementation specific to that platform.
  http://git.postgresql.org/pg/commitdiff/7195fb3cec9a7cf60f203edfa224ec632f16a101

Peter Eisentraut pushed:

- Translation updates
  http://git.postgresql.org/pg/commitdiff/0b109c822b599d64ff042e5535d9268b27e70969

- Stamp 9.3.1, 9.2.5, 9.1.10, 9.0.14, 8.4.18.

- Revive line type.  Change the input/output format to {A,B,C}, to
  match the internal representation.  Complete the implementations of
  line_in, line_out, line_recv, line_send.  Remove comments and error
  messages about the line type not being implemented.  Add regression
  tests for existing line operators and functions.  Reviewed-by: rui
  hua <365507506hua@gmail.com> Reviewed-by: Álvaro Herrera
  <alvherre@2ndquadrant.com> Reviewed-by: Jeevan Chalke
  <jeevan.chalke@enterprisedb.com>
  http://git.postgresql.org/pg/commitdiff/261c7d4b653bc3e44c31fd456d94f292caa50d8f

- pg_upgrade: Split off pg_fatal() from pg_log().  This allows
  decorating pg_fatal() with noreturn compiler hints, leading to
  better diagnostics.  Reviewed-by: Marko Tiikkaja <marko@joh.to>
  http://git.postgresql.org/pg/commitdiff/264aa14a2f687eba8c8cc2a5b6cbd6397973da98

- Update regression tests for line type patch.  Erroneously omitted in
  261c7d4b653bc3e44c31fd456d94f292caa50d8f
  http://git.postgresql.org/pg/commitdiff/083b86e71bd39549927db6a4007b0073a98e5a00

- Replace duplicate_oids with Perl implementation.  It is more
  portable, more robust, and more readable.  From: Andrew Dunstan
  <andrew@dunslane.net>
  http://git.postgresql.org/pg/commitdiff/3dc543b3d84f048ca563af1bc98092f1e01e4a81

- Remove maintainer-check target, fold into normal build.  make
  maintainer-check was obscure and rarely called in practice, and many
  breakages were missed.  Fold everything that make maintainer-check
  used to do into the normal build.  Specifically: Call duplicate_oids
  when genbki.pl is called.  Check for tabs in SGML files when the
  documentation is built.  Run msgfmt with the -c option during the
  regular build.  Add an additional configure check to see whether we
  are using the GNU version.  (make maintainer-check probably used to
  fail with non-GNU msgfmt.) Keep maintainer-check as around as phony
  target for the time being in case anyone is calling it.  But it
  won't do anything anymore.
  http://git.postgresql.org/pg/commitdiff/5dd41f3574871757e6b8e2a16b3e736fee36c20d

- doc: Handle additional character entities for SGML/XML conversion
  http://git.postgresql.org/pg/commitdiff/92c2d2ba3adc966d2eada6e792bdbf80cf7345a4

- doc: Fix table column number declaration
  http://git.postgresql.org/pg/commitdiff/8238d1ed8f9682e74f4bb7d0bcdef8bae57efdf1

- doc: Move check-tabs target into html target.  The previous plan of
  having the check-tabs target a prerequisite of "all" and "distprep"
  caused make distcheck to fail because make -q distprep would never
  be satisfied.  Put check-tabs into the html target instead, so it is
  only called when a build actually happens.
  http://git.postgresql.org/pg/commitdiff/956f2db49006ea236994c61b0fe31759e2304a24

- Tweak "line" test to avoid platform-specific floating-point output
  http://git.postgresql.org/pg/commitdiff/a53dee43fe585e673658b01e7354892dcede957e

- Add use of asprintf().  Add asprintf(), pg_asprintf(), and
  psprintf() to simplify string allocation and composition.
  Replacement implementations taken from NetBSD.  Reviewed-by: Álvaro
  Herrera <alvherre@2ndquadrant.com> Reviewed-by: Asif Naeem
  <anaeem.it@gmail.com>
  http://git.postgresql.org/pg/commitdiff/5b6d08cd2992922b667564a49f19580f11676050

- Add asprintf.c.  Forgotten in
  5b6d08cd2992922b667564a49f19580f11676050
  http://git.postgresql.org/pg/commitdiff/4aeceb4683575bccf9417452a01171a4c0596cc7

- Attempt to fix MSVC build for asprintf addition
  http://git.postgresql.org/pg/commitdiff/d3d3975836f88443f07e3cc059c2dd21f09df165

- Translation updates to fix build failures.  Now that msgfmt is run
  with -c by default, older versions of gettext are complaining about
  the PO headers Last-Translator and Language-Team still having their
  default values.  Newer gettext versions fail to catch this because
  of a bug (https://savannah.gnu.org/bugs/?40261), which is why this
  hasn't been noticed before.  Copy updated versions of affected
  translation files from the pgtranslations repository, were those
  files have been fixed.
  http://git.postgresql.org/pg/commitdiff/382b694175e9dfda98c508cedc70b7b4d1bcfb19

Heikki Linnakangas pushed:

- Fix bugs in SSI tuple locking.  1. In heap_hot_search_buffer(), the
  PredicateLockTuple() call is passed wrong offset number.
  heapTuple->t_self is set to the tid of the first tuple in the chain
  that's visited, not the one actually being read.  2.
  CheckForSerializableConflictIn() uses the tuple's t_ctid field
  instead of t_self to check for exiting predicate locks on the tuple.
  If the tuple was updated, but the updater rolled back, t_ctid points
  to the aborted dead tuple.  Reported by Hannu Krosing. Backpatch to
  9.1.
  http://git.postgresql.org/pg/commitdiff/81fbbfe3352d3965ee3d8eaafe164b2335c43f72

- TYPEALIGN doesn't work on int64 on 32-bit platforms.  The TYPEALIGN
  macro, and the related ones like MAXALIGN, don't work with values
  larger than intptr_t, because TYPEALIGN casts the argument to
  intptr_t to do the arithmetic. That's not a problem when dealing
  with pointers or lengths or offsets related to pointers, but the
  XLogInsert scaling patch added a call to MAXALIGN with an XLogRecPtr
  argument.  To fix, add wider variants of the macros, called
  TYPEALIGN64 and MAXALIGN64, which are just like the existing
  variants but work with uint64 instead of intptr_t.  Report and patch
  by David Rowley, analysis by Andres Freund.
  http://git.postgresql.org/pg/commitdiff/5962519b362d28ef02bc8ec135b9bf9b9a168263

Bruce Momjian pushed:

- docs:  update release notes for 8.4.18, 9.0.14, 9.1.10, 9.2.5, 9.3.1
  http://git.postgresql.org/pg/commitdiff/1732ce4906c54937c5f36860e9f1493f693d5ba7

- Update instructions on creating minor release notes.
  http://git.postgresql.org/pg/commitdiff/a2883241e90d10d165f42aff02634093765fdd19

- Additional instructions on minor release note creation.
  http://git.postgresql.org/pg/commitdiff/d29a03192615b55593af4a89283f5b5c72f13afe

- Auto-tune effective_cache size to be 4x shared buffers
  http://git.postgresql.org/pg/commitdiff/ee1e5662d8d8330726eaef7d3110cb7add24d058

- unaccent:  mark unaccent() functions as immutable.  Suggestion from
  Pavel Stehule
  http://git.postgresql.org/pg/commitdiff/9299f6179838cef8aa1123f6fb76f0d3d6f2decc

- docs:  clarify references to md5 hash and md5 crypt in pgcrypto
  docs.  Suggestion from Richard Neill
  http://git.postgresql.org/pg/commitdiff/9c29138c7514406341d20ef106009f9278daf857

- Update postgres.conf.sample for effective_cache_size's new default
  http://git.postgresql.org/pg/commitdiff/6648775028a85bc024f37eab5e572510977008b1

- doc:  Fix typo in effective_cache_size patch
  http://git.postgresql.org/pg/commitdiff/3e5a9eee8a8afb729ea393fd0fa6c6495241f6bb

- Fix C comment in check_effective_cache_size()
  http://git.postgresql.org/pg/commitdiff/bf46524b3136928bfe61c782a950a30638bbd159

- Move new effective_cache_size function.  Previously
  set_default_effective_cache_size() could not handle fork, non-fork,
  and bootstrap cases.
  http://git.postgresql.org/pg/commitdiff/cbafd6618af9f10e89ed05ff82dac69e65a70307

- Again move function where we set effective_cache_size's default
  http://git.postgresql.org/pg/commitdiff/6b82f78ff95d7d4201d44359dad41882e7111960

- Adjust the effective_cache_size default for standalone backends
  http://git.postgresql.org/pg/commitdiff/96dfa6ec0d809bb49f3472921b3ed941d9bd1b8c

- Centralize effective_cache_size default setting
  http://git.postgresql.org/pg/commitdiff/0c6b67507631fd9f563e0329da418060f45ac1f0

- doc:  fix typo in release notes.  Backpatch through 8.4.  Per
  suggestion by Amit Langote
  http://git.postgresql.org/pg/commitdiff/1cccce50f374cfc6081850aedce8eb0f8b274bc5

Andrew Dunstan pushed:

- json_typeof function.  Andrew Tipton.
  http://git.postgresql.org/pg/commitdiff/4d212bac1752e1bad6f3aa6242061c393ae93a0a

Alvaro Herrera pushed:

- Use $(PERL) to invoke duplicate_oids.  Per buildfarm failure
  reported by smilodon
  http://git.postgresql.org/pg/commitdiff/ada01014d4739120361fb96e3f91e2fd6791d6b8

- Rework SSL renegotiation code.  The existing renegotiation code was
  home for several bugs: it might erroneously report that
  renegotiation had failed; it might try to execute another
  renegotiation while the previous one was pending; it failed to
  terminate the connection if the renegotiation never actually took
  place; if a renegotiation was started, the byte count was reset,
  even if the renegotiation wasn't completed (this isn't good from a
  security perspective because it means continuing to use a session
  that should be considered compromised due to volume of data
  transferred.) The new code is structured to avoid these pitfalls:
  renegotiation is started a little earlier than the limit has
  expired; the handshake sequence is retried until it has actually
  returned successfully, and no more than that, but if it fails too
  many times, the connection is closed.  The byte count is reset only
  when the renegotiation has succeeded, and if the renegotiation byte
  count limit expires, the connection is terminated.  This commit only
  touches the master branch, because some of the changes are
  controversial.  If everything goes well, a back-patch might be
  considered.  Per discussion started by message
  20130710212017.GB4941@eldon.alvh.no-ip.org
  http://git.postgresql.org/pg/commitdiff/31cf1a1a43c45e53d9bb3134c07f92e722f097f9

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Dimitri Fontaine sent in another revision of a patch to implement PL
support for EVENT TRIGGERS.

SAKAMOTO Masahiko sent in another revision of a patch to enable
WAL-based fail-back without fresh backup.

Heikki Linnakangas sent in two more revisions of a patch to improve
GIN indexes by adding information to same.

Pavel Stehule sent in another revision of a patch to allow fast update
of arrays with fixed length in PL/pgsql.

Robert Haas sent in a patch to ensure that certain cases are always in
a transaction, incurring a cache hit if needed.

Andrew (RhodiumToad) Gierth sent in another revision of a patch to
implement UNNEST with multiple arguments and TABLE with multiple SRFs.

David Fetter sent in a patch to allow CREATE FOREIGN TABLE to take
LIKE as a parameter.

Kevin Grittner sent in another revision of a patch to fix the SSI
freezing bug.

Marc Cousin sent in a patch to fix an issue in contrib/lo triggers.

Andres Freund sent in another flock of patches intended to be
infrastructure for logical changeset generation.

Pavel Stehule sent in a patch to allow RAISE ... WHEN in PL/pgsql as
an alternative to the wordier IF [EXCEPTION_TYPE] THEN RAISE ... END
IF construct.

Michael Paquier sent in a patch to pre-fix some comments in the code
in preparation for REINDEX CONCURRENTLY.

Stefan Radomski sent in two more revisions of a patch to allow
reserving connections for replication roles, as distinct from those
reserved for superuser.

Antonin Houska sent in another revision of a patch to enable
throttling backups.

Mark Kirkwood sent in another revision of a patch to enable block
sampling.

Sameer Thakur sent in a patch to add documentation for session_start
and introduced fields and corrects documentation for queryid to be
query_id in the pg_stat_statements view.

Heikki Linnakangas sent in another revision of a patch to extend the
CUBE extension support to points.

Pavel Stehule and Alvaro Herrera traded patches to implement a simple
date constructor for numeric values.

Hari Babu sent in a patch to fix an issue where vacuum is not
happening on a heavily modified big table even if the dead tuples are
more than configured threshold.  This was caused by the fact that the
number of dead tuples is set to zero and no accounting was made for
dead tuples created as the vacuum ran.

Michael Paquier sent in a patch to add worker_spi_terminate to
contrib/worker_spi.

Peter Geoghegan sent in another revision of a patch to implement
INSERT...ON DUPLICATE KEY LOCK FOR UPDATE.



pgsql-announce by date:

Previous
From: Dave Page
Date:
Subject: pgAdmin 3 v1.18.1 released
Next
From: Joe Abbate
Date:
Subject: Pyrseas 0.7.0b1 is available for testing