== PostgreSQL Weekly News - May 05 2013 ==

From: David Fetter <david(at)fetter(dot)org>
To: PostgreSQL Announce <pgsql-announce(at)postgresql(dot)org>
Subject: == PostgreSQL Weekly News - May 05 2013 ==
Date: 2013-05-06 03:44:29
Message-ID: 20130506034429.GA2211@fetter.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-announce

== PostgreSQL Weekly News - May 05 2013 ==

== PostgreSQL Jobs for May ==

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

== PostgreSQL Local ==

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

Postgres-XC is going to have its first user/developer meeting after
the cluster summit.
https://wiki.postgresql.org/wiki/PgCon2013CanadaClusterSummit#PostgresXC_Summit

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/

PG Day France is the major French-speaking PostgreSQL community event.
It will be held June 13, 2013 in Nantes, France.
http://pgday.fr/

PostgreSQL Brazil will be held August 15-17, 2013 in Porto Velho, RO,
Brazil.
http://pgbr.postgresql.org.br/2013/chamada.en.php

Save The Date!
Postgres Open 2013 will be in Chicago, IL, USA, September 16-18.
Hotel Sax:
https://reservations.ihotelier.com/crs/g_reservation.cfm?groupID=888761&hotelID=6865
Early Bird registration:
http://postgresopen-eac2.eventbrite.com/

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

PGConf.DE 2013 will be held November 8th, 2013, at the Rhineland
Industrial Museum in Oberhausen.
http://2013.pgconf.de/

== 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(at)fetter(dot)org, German language
to pwn(at)pgug(dot)de, Italian language to pwn(at)itpug(dot)org(dot) Spanish language
to pwn(at)arpug(dot)com(dot)ar(dot)

== Applied Patches ==

Simon Riggs pushed:

- Introduce new page checksum algorithm and module. Isolate checksum
calculation to its own module, so that bufpage knows little if
anything about the details of the calculation. This implementation
is a modified FNV-1a hash checksum, details of which are given in
the new checksum.c header comments. Basic implementation only, so
we fix the output value. Later related commits will add version
numbers to pg_control, compiler optimization flags and memory
barriers. Ants Aasma, reviewed by Jeff Davis and Simon Riggs
http://git.postgresql.org/pg/commitdiff/43e7a668499b8a69a62cc539a0fbe6983384339c

- Compiler optimizations for page checksum code. Ants Aasma and Jeff
Davis
http://git.postgresql.org/pg/commitdiff/fdea2530bd4afb3d512cb9700b1d8cd603fab0e7

- Ensure we MarkBufferDirty before visibilitymap_set() logs the heap
page and sets the LSN. Otherwise a checkpoint could occur between
those actions and leave us in an inconsistent state. Jeff Davis
http://git.postgresql.org/pg/commitdiff/730924397c8151c3cf34e633211cd0fe4a0db112

- Record data_checksum_version in control file. The value is not used
anywhere in code, but will allow future changes to the checksum
version should that become necessary in the future.
http://git.postgresql.org/pg/commitdiff/443951748ce4c94b001877c7cf88b0ee969c79e7

- Bump PG_CONTROL_VERSION to 937
http://git.postgresql.org/pg/commitdiff/ceabfb20f9a7aadbb09ee1a276726fc309a39300

- Temporarily silence pg_upgrade's checksums check
http://git.postgresql.org/pg/commitdiff/28377213bb6550cc5035b0ba258b518f80c1aaae

- Revert previous temporary patch
http://git.postgresql.org/pg/commitdiff/be475a2473b18a62a02d56c44047e16b54aac54d

- Fix pg_upgrade for 9.3 with data checksums. Previous changes
misconstrued pg_upgrade internals causing build farm breakages.
http://git.postgresql.org/pg/commitdiff/87d3b35a1ca31a9d947a8f919a6006679216dff0

Robert Haas pushed:

- Attempt to fix error recovery in COPY BOTH mode. Previously, libpq
and the backend had opposite ideas about whether it was necessary
for the client to send a CopyDone message after receiving an
ErrorResponse, making it impossible to cleanly exit COPY BOTH mode.
Fix libpq so that works correctly, adopting the backend's notion
that an ErrorResponse kills the copy in both directions. Adjust
receivelog.c to avoid a degradation in the quality of the resulting
error messages. libpqwalreceiver.c is already doing the right
thing, so no adjustment needed there. Add an explicit statement to
the documentation explaining how this part of the protocol is
supposed to work, in the hopes of avoiding future confusion in this
area. Since the consequences of all this confusion are very
limited, especially in the back-branches where no client ever
attempts to exit COPY BOTH mode without closing the connection
entirely, no back-patch.
http://git.postgresql.org/pg/commitdiff/91fa8532f4053468acc08534a6aac516ccde47b7

Kevin Grittner pushed:

- Ensure ANALYZE phase is not skipped because of canceled truncate.
Patch b19e4250b45e91c9cbdd18d35ea6391ab5961c8d attempted to preserve
existing behavior regarding statistics generation in the case that a
truncation attempt was canceled due to lock conflicts. It failed to
do this accurately in two regards: (1) autovacuum had previously
generated statistics if the truncate attempt failed to initially get
the lock rather than having started the attempt, and (2) the VACUUM
ANALYZE command had always generated statistics. Both of these
changes were unintended, and are reverted by this patch. On review,
there seems to be consensus that the previous failure to generate
statistics when the truncate was terminated was more an unfortunate
consequence of how that effort was previously terminated than a
feature we want to keep; so this patch generates statistics even
when an autovacuum truncation attempt terminates early. Another
unintended change which is kept on the basis that it is an
improvement is that when a VACUUM command is truncating, it will the
new heuristic for avoiding blocking other processes, rather than
keeping an AccessExclusiveLock on the table for however long the
truncation takes. Per multiple reports, with some renaming per
patch by Jeff Janes. Backpatch to 9.0, where problem was created.
http://git.postgresql.org/pg/commitdiff/5fc893760f60d57aca30163796db1abe516b3fac

- Add regression test for bug fixed by recent refactoring. Test case
by Andres Freund for bug fixed by Tom Lane's refactoring in commit
5194024d72f33fb209e10f9ab0ada7cc67df45b7
http://git.postgresql.org/pg/commitdiff/200ba1667b3a8d7a9d559d2f05f83d209c9d8267

- Prevent (auto)vacuum from truncating first page of populated
matview. Per report from Fujii Masao, with regression test using
his example.
http://git.postgresql.org/pg/commitdiff/b69ec7cc990fd8da75ed4c232899503217d7b9ae

Tom Lane pushed:

- Postpone creation of pathkeys lists to fix bug #8049. This patch
gets rid of the concept of, and infrastructure for, non-canonical
PathKeys; we now only ever create canonical pathkey lists. The need
for non-canonical pathkeys came from the desire to have
grouping_planner initialize query_pathkeys and related pathkey lists
before calling query_planner. However, since query_planner didn't
actually *do* anything with those lists before they'd been made
canonical, we can get rid of the whole mess by just not creating the
lists at all until the point where we formerly canonicalized them.
There are several ways in which we could implement that without
making query_planner itself deal with grouping/sorting features
(which are supposed to be the province of grouping_planner). I
chose to add a callback function to query_planner's API; other
alternatives would have required adding more fields to PlannerInfo,
which while not bad in itself would create an ABI break for
planner-related plugins in the 9.2 release series. This still
breaks ABI for anything that calls query_planner directly, but it
seems somewhat unlikely that there are any such plugins. I had
originally conceived of this change as merely a step on the way to
fixing bug #8049 from Teun Hoogendoorn; but it turns out that this
fixes that bug all by itself, as per the added regression test. The
reason is that now get_eclass_for_sort_expr is adding the ORDER BY
expression at the end of EquivalenceClass creation not the start,
and so anything that is in a multi-member EquivalenceClass has
already been created with correct em_nullable_relids. I am
suspicious that there are related scenarios in which we still need
to teach get_eclass_for_sort_expr to compute correct
nullable_relids, but am not eager to risk destabilizing either 9.2
or 9.3 to fix bugs that are only hypothetical. So for the moment,
do this and stop here. Back-patch to 9.2 but not to earlier
branches, since they don't exhibit this bug for lack of
join-clause-movement logic that depends on em_nullable_relids being
correct. (We might have to revisit that choice if any related bugs
turn up.) In 9.2, don't change the signature of
make_pathkeys_for_sortclauses nor remove canonicalize_pathkeys, so
as not to risk more plugin breakage than we have to.
http://git.postgresql.org/pg/commitdiff/db9f0e1d9a4a0842c814a464cdc9758c3f20b96c

- Fix permission tests for views/tables proven empty by constraint
exclusion. A view defined as "select <something> where false" had
the curious property that the system wouldn't check whether users
had the privileges necessary to select from it. More generally,
permissions checks could be skipped for tables referenced in
sub-selects or views that were proven empty by constraint exclusion
(although some quick testing suggests this seldom happens in cases
of practical interest). This happened because the planner failed to
include rangetable entries for such tables in the finished plan.
This was noticed in connection with erroneous handling of
materialized views, but actually the issue is quite unrelated to
matviews. Therefore, revert commit
200ba1667b3a8d7a9d559d2f05f83d209c9d8267 in favor of a more direct
test for the real problem. Back-patch to 9.2 where the bug was
introduced (by commit 7741dd6590073719688891898e85f0cb73453159).
http://git.postgresql.org/pg/commitdiff/50c137487c96e629e0e5372bb3d1b5f1a2f71a88

- Improve SPI documentation about null-flags arrays. Clarify the
description of nulls[] arguments, and use the same wording for all
SPI functions with this type of argument. Per gripe from Yuriy
Rusinov.
http://git.postgresql.org/pg/commitdiff/c091c431979c182bc835b345655c1c162479aeb3

- Improve behavior of \watch with non-tuple-returning commands. Print
the command tag if we get PGRES_COMMAND_OK, and throw an error for
other cases. Per gripe from Michael Paquier. In passing, add an
fflush(), just to be real sure the output appears before we sleep.
http://git.postgresql.org/pg/commitdiff/626e6eda4f605788110bfc5fa95760305f7eb749

Peter Eisentraut pushed:

- Revert "pg_ctl: Add idempotent option." This reverts commit
87306184580c9c49717b00d48a2f9e717f21e0a8. The behavior in certain
cases is still being debated, and it's too late to solve this before
beta.
http://git.postgresql.org/pg/commitdiff/187ca5e8e90baacc2d36c8bd0b08040f33c07fa1

- pg_upgrade: Remove PGPORT handling from test suite. This code was
left over from when pg_upgrade paid attention to PGPORT. Now it
would only affects the regression test run before the test run of
pg_upgrade. You can still set PGPORT for that, but there is no
reason to have the test driver default it to 50432.
http://git.postgresql.org/pg/commitdiff/3d53173e20d151341f894f79d556768c845ba3e4

- Translation updates
http://git.postgresql.org/pg/commitdiff/539ecc92415a51bccb0805348a2a414a8e8ab7e7

Andrew Dunstan pushed:

- Use correct length to convert json unicode escapes. Bug reported on
IRC - fix due to Andrew Gierth.
http://git.postgresql.org/pg/commitdiff/5f8b4319b94476de715ffef9183227ac6f4925c0

Bruce Momjian pushed:

- pg_test_fsync: update output to show usecs/op clearer
http://git.postgresql.org/pg/commitdiff/095018bc32b70eff95bdf3c2959e6eef09dcfa6a

- 9.3 release notes: suggested improvements from Jeff Janes and Josh
Berkus
http://git.postgresql.org/pg/commitdiff/c8f61ebdc6e0a260efeef432239d4d2e8202a30d

- 9.3 release notes: update for current commits. Also, remove broken
link in release.sgml.
http://git.postgresql.org/pg/commitdiff/5fcf944c2303232826be49c09943849480719936

- 9.3 release notes: add markup for text. Still need to add links
for new features.
http://git.postgresql.org/pg/commitdiff/14c7a74b6ebe4743b79e4f500503ffaa8c8a8638

- 9.3 release notes: Add links to SGML sections
http://git.postgresql.org/pg/commitdiff/15f27aebbb688495da8a77a1ae67ded38f569829

- 9.3 release notes: Add markup for pg_backup_start_time()
http://git.postgresql.org/pg/commitdiff/1136d7a74d9feeab556a970b4b1e548e05f92a70

- 9.3 release notes: move compatibility items into their own section
http://git.postgresql.org/pg/commitdiff/2497dc0867afd5b51d50e090fce2e828baadc8c3

- 9.3 release notes: adjustments. Fixes from Peter Geoghegan, Ian
Lawrence Barwick, Marti Raudsepp
http://git.postgresql.org/pg/commitdiff/c008ca6015732da09416381710066540cbfa735b

- docs: fix log_line_prefix session id docs. Backpatch to 9.2.
Report from Ian Lawrence Barwick
http://git.postgresql.org/pg/commitdiff/262a3629971bdf61c309843b385a58d97bf4badb

- 9.3 docs: wording fixes From Erik Rijkers
http://git.postgresql.org/pg/commitdiff/75d1406a194d16823e786a8d5094abd1e7e5661b

- docs: log_line_prefix session id fix. Restore 4-byte designation
for docs. Fix 9.3 doc query to properly pad to four digits.
Backpatch to all active branches Per suggestions from Ian Lawrence
Barwick
http://git.postgresql.org/pg/commitdiff/f87f214b7c09e20d954fae887809c41cc5ca68df

- docs: Improve log_line_prefix session_id query
http://git.postgresql.org/pg/commitdiff/083d8fa79dbd693f48c1c195bf4f2af3d1e7dc67

Heikki Linnakangas pushed:

- Fix thinko in comment. WAL segment means a 16 Matteo Beccati
physical WAL file; this comment meant a logical 4 GB log file. Amit
Langote. Apply to backbranches only, as the comment is gone in
master.
http://git.postgresql.org/pg/commitdiff/7fa56e636e42d1bc969483ed1f2c93d47abe39ba

== Rejected Patches (for now) ==

No one was disappointed this week :-)

== Pending Patches ==

Fabien COELHO sent in four revisions of a patch to add a --throttle
option to pgbench.

Peter Eisentraut sent in a PoC patch to allow back branches to compile
with gcc 4.8.0 and higher.

Kevin Grittner and Tom Lane swapped patches intended to iron out
remaining "stop ship" bugs in materialized views.

Jeff Davis sent in a patch to fix some issues in page checksums.

Fabien COELHO sent in a patch to add a --progress option to pgbench.

Fabien COELHO sent in a patch to add long options to pgbench.

Fujii Masao sent in a patch to clarify the usage of the --idempotent
option in pg_ctl.

Browse pgsql-announce by date

  From Date Subject
Next Message Bruce Momjian 2013-05-06 15:03:08 PgLife is now live
Previous Message David Fetter 2013-04-29 03:17:57 == PostgreSQL Weekly News - April 28 2013 ==