== PostgreSQL Weekly News - June 21 2015 == - Mailing list pgsql-announce
From | David Fetter |
---|---|
Subject | == PostgreSQL Weekly News - June 21 2015 == |
Date | |
Msg-id | 20150621221026.GB32298@fetter.org Whole thread Raw |
List | pgsql-announce |
== PostgreSQL Weekly News - June 21 2015 == PostgreSQL Conference Europe 2015 in Vienna, Austria, on October 27-30 is now accepting registrations for conference attendance at http://2015.pgconf.eu/registration/. == PostgreSQL Product News == The Amazon Linux AMI now has pgTap support. https://lambda-linux.io/blog/2015/06/18/announcing-pgtap-support-for-amazon-linux/ MJSQLView Version 7.03, a Java-based UI which supports PostgreSQL, released. http://myjsqlview.com/ PG Partition Manager 2.0.0 an extension to manage table partitioning, released. https://github.com/keithf4/pg_partman psycopg2 2.6.1, a Python connector for PostgreSQL, released. http://initd.org/psycopg/articles/2015/06/16/psycopg-261-released/ == PostgreSQL Jobs for June == http://archives.postgresql.org/pgsql-jobs/2015-06/threads.php == PostgreSQL Local == The second Swiss Postgres Conference will be held June 25-26, 2015 at HSR Rapperswil. http://www.postgres-conference.ch/ PGDay UK, Conference will be taking place on 7th July 2015 – it is aimed at the UK PostgreSQL Community. The CfP is open until 13 April 2015. http://www.postgresqlusergroup.org.uk PGDay Campinas 2015 will take place in Campinas on August 7. The CfP is open through May 31. http://pgdaycampinas.com.br/english/ The Call For Papers for PostgresOpen 2015, being held in Dallas, Texas from September 16th to 18th, is now open. http://2015.postgresopen.org/callforpapers/ The CfP for PostgreSQL Session #7, September 24th, 2015 in Paris, France, is open until June 15, 2015. call-for-paper <AT> postgresql-sessions <DOT> org. http://www.postgresql-sessions.org/7/about PostgreSQL Conference Europe 2015 will be held on October 27-30 in the Vienna Marriott Hotel, in Vienna, Austria. The CfP is open until August 7. http://2015.pgconf.eu/ PGConf Silicon Valley 2015 is November 17-18 at the South San Francisco Convention Center. The CfP is open through June 15. http://www.pgconfsv.com == 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 == Michael Meskes pushed: - Check for out of memory when allocating sqlca. Patch by Michael Paquier http://git.postgresql.org/pg/commitdiff/94a484222caece19e381a6941b8d826027ac2e75 - Fix memory leak in ecpglib's connect function. Patch by Michael Paquier http://git.postgresql.org/pg/commitdiff/af0b49fc98cb3494d1e444a4f5c3364627a3ed5f Andrew Dunstan pushed: - Fix comment in fmgr.h to refer to actual function used. FunctionLookup() is long gone if it ever existed, and fmgr_info() is what's now used, so the comments now reflect that. http://git.postgresql.org/pg/commitdiff/41d798a139b5c94ad8ce10b192141b5bcc03dda3 Noah Misch pushed: - Detect setlocale(LC_CTYPE, NULL) clobbering previous return values. POSIX permits setlocale() calls to invalidate any previous setlocale() return values. Commit 5f538ad004aa00cf0881f179f0cde789aad4f47e neglected to account for that. In advance of fixing that bug, switch to failing hard on affected configurations. This is a planned temporary commit to assay buildfarm-represented configurations. http://git.postgresql.org/pg/commitdiff/b76e76be460a240e99c33f6fb470dd1d5fe01a2a - Revert "Detect setlocale(LC_CTYPE, NULL) clobbering previous return values." This reverts commit b76e76be460a240e99c33f6fb470dd1d5fe01a2a. The buildfarm yielded no related failures. http://git.postgresql.org/pg/commitdiff/1f2a378de41bf3e516b8d2c4d65790aeefbfb89d - Fix failure to copy setlocale() return value. POSIX permits setlocale() calls to invalidate any previous setlocale() return values, but commit 5f538ad004aa00cf0881f179f0cde789aad4f47e neglected to account for setlocale(LC_CTYPE, NULL) doing so. The effect was to set the LC_CTYPE environment variable to an unintended value. pg_perm_setlocale() sets this variable to assist PL/Perl; without it, Perl would undo PostgreSQL's locale settings. The known-affected configurations are 32-bit, release builds using Visual Studio 2012 or Visual Studio 2013. Visual Studio 2010 is unaffected, as were all buildfarm-attested configurations. In principle, this bug could leave the wrong LC_CTYPE in effect after PL/Perl use, which could in turn facilitate problems like corrupt tsvector datums. No known platform experiences that consequence, because PL/Perl on Windows does not use this environment variable. The bug has been user-visible, as early postmaster failure, on systems with Windows ANSI code page set to CP936 for "Chinese (Simplified, PRC)" and probably on systems using other multibyte code pages. (SetEnvironmentVariable() rejects values containing character data not valid under the Windows ANSI code page.) Back-patch to 9.4, where the faulty commit first appeared. Reported by Didi Hu and 林鹏程. Reviewed by Tom Lane, though this fix strategy was not his first choice. http://git.postgresql.org/pg/commitdiff/f0a264a362343287051c4737b01aa3ebe36f21a6 Robert Haas pushed: - Change TAP test framework to not rely on having a chmod executable. This might not work at all on Windows, and is not ever efficient. Michael Paquier http://git.postgresql.org/pg/commitdiff/ca3f43aa48a83013ea50aeee7cd193a5859c4587 - Add PASSWORD to tab completions for CREATE/ALTER ROLE/USER/GROUP. Jeevan Chalke http://git.postgresql.org/pg/commitdiff/86e4751786bb0dcb29528ef49b067d0e393e4934 - Fix corner case in autovacuum-forcing logic for multixact wraparound. Since find_multixact_start() relies on SimpleLruDoesPhysicalPageExist(), and that function looks only at the on-disk state, it's possible for it to fail to find a page that exists in the in-memory SLRU that has not been written yet. If that happens, SetOffsetVacuumLimit() will erroneously decide to force emergency autovacuuming immediately. We should probably fix find_multixact_start() to consider the data cached in memory as well as on the on-disk state, but that's no excuse for SetOffsetVacuumLimit() to be stupid about the case where it can no longer read the value after having previously succeeded in doing so. Report by Andres Freund. http://git.postgresql.org/pg/commitdiff/ed16f73c574660aa0902caa1c0adeba07f8c70a5 Tom Lane pushed: - Fix bogus range_table_mutator() logic for RangeTblEntry.tablesample. Must make a copy of the TableSampleClause node; the previous coding modified the input data structure in-place. Petr Jelinek http://git.postgresql.org/pg/commitdiff/be87143fe90adf8862791aeddd76151e88ce5603 - In immediate shutdown, postmaster should not exit till children are gone. This adjusts commit 82233ce7ea42d6ba519aaec63008aff49da6c7af so that the postmaster does not exit until all its child processes have exited, even if the 5-second timeout elapses and we have to send SIGKILL. There is no great value in having the postmaster process quit sooner, and doing so can mislead onlookers into thinking that the cluster is fully terminated when actually some child processes still survive. This effect might explain recent test failures on buildfarm member hamster, wherein we failed to restart a cluster just after shutting it down with "pg_ctl stop -m immediate". I also did a bit of code review/beautification, including fixing a faulty use of the Max() macro on a volatile expression. Back-patch to 9.4. In older branches, the postmaster never waited for children to exit during immediate shutdowns, and changing that would be too much of a behavioral change. http://git.postgresql.org/pg/commitdiff/48913db887e6a41fa3f1b6cdf80ee89e38f21d9d Álvaro Herrera pushed: - Clamp autovacuum launcher sleep time to 5 minutes. This avoids the problem that it might go to sleep for an unreasonable amount of time in unusual conditions like the server clock moving backwards an unreasonable amount of time. (Simply moving the server clock forward again doesn't solve the problem unless you wake up the autovacuum launcher manually, say by sending it SIGHUP). Per trouble report from Prakash Itnal in https://www.postgresql.org/message-id/CAHC5u79-UqbapAABH2t4Rh2eYdyge0Zid-X=Xz-ZWZCBK42S0Q@mail.gmail.com Analyzed independently by Haribabu Kommi and Tom Lane. http://git.postgresql.org/pg/commitdiff/da1a9d0f5bed1f93908be9233a4fef39b988e505 - Fix thinko in comment (launcher -> worker) http://git.postgresql.org/pg/commitdiff/3c400a3f2bf4bb93a60cefc09416d37fc3dab8ed - Fix BRIN supported operators table. Some of the entries in the inclusion opclasses where missing operators, and we had an entry for inet_inclusion_ops instead of network_inclusion_ops. Sort the operators within each opclass by strategy number, just to make it easier to spot mistakes. Also sort the rows by data type name, rather than OID. http://git.postgresql.org/pg/commitdiff/1443a165db007462c5044ad8d03d919ac4323e6d - Add transforms to pg_get_object_address and friends. This was missed when transforms were added by commit cac76582053ef8e. Extracted from a larger patch. Author: Michael Paquier http://git.postgresql.org/pg/commitdiff/ad89a5d115b3b4025f3c135f95f722e7e4becf13 Peter Eisentraut pushed: - PL/Perl: Add alternative expected file for Perl 5.22 http://git.postgresql.org/pg/commitdiff/103382abf87453d6555755da8f9fbef0b9965f81 Andres Freund pushed: - Add missing check for wal_debug GUC. 9a20a9b2 added a new elog(), enabled when WAL_DEBUG is defined. The other WAL_DEBUG dependant messages check for the wal_debug GUC, but this one did not. While at it replace 'upto' with 'up to'. Discussion: 20150610110253.GF3832@alap3.anarazel.de Backpatch to 9.4, the first release containing 9a20a9b2. http://git.postgresql.org/pg/commitdiff/90231cd5188c43da94f58f7a839eee9286d0f864 - Improve multixact emergency autovacuum logic. Previously autovacuum was not necessarily triggered if space in the members slru got tight. The first problem was that the signalling was tied to values in the offsets slru, but members can advance much faster. Thats especially a problem if old sessions had been around that previously prevented the multixact horizon to increase. Secondly the skipping logic doesn't work if the database was restarted after autovacuum was triggered - that knowledge is not preserved across restart. This is especially a problem because it's a common panic-reaction to restart the database if it gets slow to anti-wraparound vacuums. Fix the first problem by separating the logic for members from offsets. Trigger autovacuum whenever a multixact crosses a segment boundary, as the current member offset increases in irregular values, so we can't use a simple modulo logic as for offsets. Add a stopgap for the second problem, by signalling autovacuum whenver ERRORing out because of boundaries. Discussion: 20150608163707.GD20772@alap3.anarazel.de Backpatch into 9.3, where it became more likely that multixacts wrap around. http://git.postgresql.org/pg/commitdiff/667912aee649c3608e003568e4b47d95251b1c8c == Rejected Patches (for now) == No one was disappointed this week :-) == Pending Patches == David Rowley sent in a patch to let the executor notice when multiple aggregates in a query share a transition function, executing the common ones only once per row. David Rowley sent in another revision of a patch to improve some appendStringInfo* calls. Petr Jelinek sent in a patch to extend CREATE EXTENSION to include its dependencies via the optional RECURSIVE keyword. Fabien COELHO sent in another revision of a patch to fix pgbench --progress report under (very) low rate. Tomas Vondra sent in a patch to teach the expression walker about RestrictInfo. Amit Kapila sent in a patch to rename mapfile if backupfile not present. Vik Fearing sent in a patch to add tab completion to psql for CREATE SEQUENCE. Michael Paquier sent in a patch to reproduce a problem with pg_rewind. Michael Paquier sent in a patch to make process_remote_file ignore files named as pg_xlog/xlogtemp.*. SAWADA Masahiko sent in a patch to give the GIN function of pageinspect a consistent data type. Fabien COELHO sent in another revision of a patch to smooth checkpoint flushing. Tomas Vondra sent in another revision of a patch to make a better ndistinct estimator. Brendan Jurd sent in two revisions of a patch to add a new built-in function pg_notify_queue_saturation(). Michael Paquier sent in three more revisions of a patch to improve the way TAP tests log their output using IPC::Run::run. Michael Paquier sent in a patch to add a missing -w switch to the pg_ctl stop call in pg_regress. Robert Haas, Tom Lane, and Dean Rasheed traded patches to fix some infelicities recently introduced in the table inheritance part of the planner. Marti Raudsepp sent in a patch to fix pg_upgrade when postgres template1 aren't in the default database. Petr Jelinek sent in another revision of a patch to implement tab completion in psql for TABLESAMPLE. Álvaro Herrera sent in a patch to add pg_get_multixact_members() and pg_get_multixact_range(). Thomas Munro sent in a patch to fix an issue where the get_relation_info comment was out of sync with the code nearby. Andres Freund sent in a patch to rework the way multixact truncations work with the goal of making them WAL logged. Fabien COELHO sent in a patch to allow backslash-continuations in custom scripts.
pgsql-announce by date: