== PostgreSQL Weekly News - November 05 2017 == PGCon 2018 will take place in Ottawa on May 29 - June 2018. The CfP goes out soon. https://www.pgcon.org/2018/
Prague PostgreSQL Developer Day 2018 (P2D2 2018) is a two-day conference that will be held on February 14-15 2018 in Prague, Czech Republic. The CfP is open until January 5, 2018 at https://p2d2.cz/callforpapers http://www.p2d2.cz/ == PostgreSQL Product News == PGroonga 2.0.2 a full text search platform for all languages, released. http://groonga.org/en/blog/2017/10/10/pgroonga-2.0.2.html Pgpool-II 3.6.7, 3.5.11, 3.4.14, and 3.3.18 released. http://www.pgpool.net/docs/latest/en/html/release.html OmniDB 2.3, a browser-based database management tool, released. https://www.2ndquadrant.com/en/resources/omnidb/ check_postgres 2.23.0, a PostgreSQL plugin for the Nagios/Icinga monitoring systems, released. https://github.com/bucardo/check_postgres/releases/tag/2.23.0 Database Designer for PostgreSQL 1.12 released. http://microolap.com/products/database/postgresql-designer/news/detail.php?ID=1803 == PostgreSQL Jobs for November == http://archives.postgresql.org/pgsql-jobs/2017-11/ == PostgreSQL Local == 2ndQuadrant PostgreSQL Conference 2017 (2Q PGConf, for short) will be hosted on November 6th & 7th in New York City, and November 9th in Chicago. http://www.2qpgconf.com/ PGConf Local: Seattle will be held November 13 - 14, 2017. https://www.pgconf.us/#Seattle2017 PGDay Australia 2017 will be held on November 17 in Melbourne. http://2017.pgday.com.au/ PostgreSQL Session will take place November 17th, 2017, in Paris, France. http://www.postgresql-sessions.org/en/9/start PGDAY Brasilia 2017 will take place December 2, 2017. The CfP is open at http://www.pgdaybrasilia.com.br/submissao-de-palestra/ PGConf Local: Austin will be held December 4 - 5, 2017. Call for Papers is now open at https://www.pgconf.us/conferences/Austin2017 PGConf.ASIA 2017 will take place on December 4-6 2017 in Akihabara, Tokyo, Japan. http://www.pgconf.asia/EN/2017/ FOSDEM PGDay 2018, a one day conference held before the main FOSDEM event will be held in Brussels, Belgium, on Feb 2nd, 2018. https://2018.fosdempgday.org/ PGConf India 2018 will be on February 22-23, 2018 in Bengaluru, Karnataka. Proposals are due via https://goo.gl/forms/F9hRjOIsaNasVOAz2 by October 31st, 2017. http://pgconf.in/ PostgreSQL@SCaLE is a two day, two track event which takes place on March 8-9, 2018, at Pasadena Convention Center, as part of SCaLE 16X. The CfP is open through October 31, 2017 at http://www.socallinuxexpo.org/scale/16x/cfp PGConf APAC 2018 will be held in Singapore March 22-24, 2018. The CfP is open at http://2018.pgconfapac.org/cfp through December 4, 2017. http://2018.pgconfapac.org/ The German-speaking PostgreSQL Conference 2018 will take place on April 13th, 2018 in Berlin. The CfP is open until January 09, 2018 at http://2018.pgconf.de/de/callforpapers.html and the conference site is at http://2018.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 EST5EDT. Please send English language ones to da...@fetter.org, German language to p...@pgug.de, Italian language to p...@itpug.org. == Applied Patches == Magnus Hagander pushed: - Fix typo. https://git.postgresql.org/pg/commitdiff/77954f996cdb31ead2718aa3a9b4878da382e385 - Fix typo in comment. Etsuro Fujita https://git.postgresql.org/pg/commitdiff/854b643c8eb476ab957d83d562c8bfa10586d123 - Fix comment. Author: Bernd Helmle <maili...@oopsware.de> https://git.postgresql.org/pg/commitdiff/86bc521811f381a121817fdfb096df431edb32f5 Álvaro Herrera pushed: - Fix autovacuum work item error handling. In autovacuum's "work item" processing, a few strings were allocated in the current transaction's memory context, which goes away during error handling; if an error happened during execution of the work item, the pfree() calls to clean up afterwards would try to release already-released memory, possibly leading to a crash. In branch master, this was already fixed by commit 335f3d04e4c8, so backpatch that to REL_10_STABLE to fix the problem there too. As a secondary problem, verify that the autovacuum worker is connected to the right database for each work item; otherwise some items would be discarded by workers in other databases. Reported-by: Justin Pryzby Discussion: https://postgr.es/m/20171014035732.gb31...@telsasoft.com https://git.postgresql.org/pg/commitdiff/be72b9c378bfe99a3d175c98d36dc150229f4faf - Revert bogus fixes of HOT-freezing bug. It turns out we misdiagnosed what the real problem was. Revert the previous changes, because they may have worse consequences going forward. A better fix is forthcoming. The simplistic test case is kept, though disabled. Discussion: https://postgr.es/m/20171102112019.33wb7g5wp4zpj...@alap3.anarazel.de https://git.postgresql.org/pg/commitdiff/c6764eb3aea63f3f95582bd660785e2b0d4439f9 - Fix BRIN summarization concurrent with extension. If a process is extending a table concurrently with some BRIN summarization process, it is possible for the latter to miss pages added by the former because the number of pages is computed ahead of time. Fix by determining a fresh relation size after inserting the placeholder tuple: any process that further extends the table concurrently will update the placeholder tuple, while previous pages will be processed by the heap scan. Reported-by: Tomas Vondra Reviewed-by: Tom Lane Author: Álvaro Herrera Discussion: https://postgr.es/m/083d996a-4a8a-0e13-800a-851dd09ad...@2ndquadrant.com Backpatch-to: 9.5 https://git.postgresql.org/pg/commitdiff/ec42a1dcb30de235b252f6d4972f2f2bdb2e47f2 - Fix thinkos in BRIN summarization. The previous commit contained a thinko that made a single-range summarization request process from there to end of table. Fix by setting the correct end range point. Per buildfarm. https://git.postgresql.org/pg/commitdiff/1b890562b8d1b44bd3ef948aeeb58dd59abd04b7 Tom Lane pushed: - Doc: call out UPDATE syntax change as a v10 compatibility issue. The change made by commit 906bfcad7 means that if you're writing a parenthesized column list in UPDATE ... SET, but that column list is only one column, you now need to write ROW(expression) on the righthand side, not just a parenthesized expression. This was an intentional change for spec compatibility and potential future expansion of the possibilities for the RHS, but I'd neglected to document it as a compatibility issue, figuring that hardly anyone would bother with parenthesized syntax for a single target column. I was wrong, as shown by questions from Justin Pryzby, Adam Brusselback, and others. Move the release note item into the compatibility section and point out the behavior change for a single target column. Discussion: https://postgr.es/m/camjna7cdlzpcs0xnrpkvqmj6vb6g3eh8cygp9zbjxdpfftz...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/86182b18957b8f9e8045d55b137aeef7c9af9916 - Fix underqualified cast-target type names in pg_dump and psql queries. Queries running with some non-pg_catalog schema frontmost in their search path need to be careful to schema-qualify type names that should be sought in pg_catalog. Vitaly Burovoy reported an oversight of this sort in pg_dump's dumpSequence, and grepping detected another one in psql's describeOneTableDetails, both introduced by sequence-related changes in v10. In pg_dump, we can fix things by removing the cast altogether, since it doesn't really matter what data types are reported for these query result columns. Likewise in psql, the query seemed to be working unduly hard to get a result that's guaranteed to be exactly 'bigint'. I also changed a couple of occurrences of "::char" similarly. These are not bugs, since "char" is a typename keyword and not subject to search_path rules, but it seems better to use uniform style. Vitaly Burovoy and Tom Lane Discussion: https://postgr.es/m/CAKOSWN=ds66zlw2sqkltm8wbxfgdbc_odkmt3djfpt2me5k...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/080351466c5a669bf35a323bdec9e296330a5dbb - Fix ALTER TABLE code to update domain constraints when needed. It's possible for dropping a column, or altering its type, to require changes in domain CHECK constraint expressions; but the code was previously only expecting to find dependent table CHECK constraints. Make the necessary adjustments. This is a fairly old oversight, but it's a lot easier to encounter the problem in the context of domains over composite types than it was before. Given the lack of field complaints, I'm not going to bother with a back-patch, though I'd be willing to reconsider that decision if someone does complain. Patch by me, reviewed by Michael Paquier Discussion: https://postgr.es/m/30656.1509128...@sss.pgh.pa.us https://git.postgresql.org/pg/commitdiff/af20e2d728eb508bb169e7294e4e210a3459833a - Allow bitmap scans to operate as index-only scans when possible. If we don't have to return any columns from heap tuples, and there's no need to recheck qual conditions, and the heap page is all-visible, then we can skip fetching the heap page altogether. Skip prefetching pages too, when possible, on the assumption that the recheck flag will remain the same from one page to the next. While that assumption is hardly bulletproof, it seems like a good bet most of the time, and better than prefetching pages we don't need. This commit installs the executor infrastructure, but doesn't change any planner cost estimates, thus possibly causing bitmap scans to not be chosen in cases where this change renders them the best choice. I (tgl) am not entirely convinced that we need to account for this behavior in the planner, because I think typically the bitmap scan would get chosen anyway if it's the best bet. In any case the submitted patch took way too many shortcuts, resulting in too many clearly-bad choices, to be committable. Alexander Kuzmenkov, reviewed by Alexey Chernyshov, and whacked around rather heavily by me. Discussion: https://postgr.es/m/239a8955-c0fc-f506-026d-c837e86c8...@postgrespro.ru https://git.postgresql.org/pg/commitdiff/7c70996ebf0949b142a99c9445061c3c83ce62b3 - Doc: update URL for check_postgres. Reported by Dan Vianello. Discussion: https://postgr.es/m/e6e12f18f70e46848c058084d42fb...@kstlmexgp001.corp.chartercom.com https://git.postgresql.org/pg/commitdiff/c0e2062d3214f6230a0e1eee9236b202bda9221f - Teach planner to account for HAVING quals in aggregation plan nodes. For some reason, we have never accounted for either the evaluation cost or the selectivity of filter conditions attached to Agg and Group nodes (which, in practice, are always conditions from a HAVING clause). Applying our regular selectivity logic to post-grouping conditions is a bit bogus, but it's surely better than taking the selectivity as 1.0. Perhaps someday the extended-statistics mechanism can be taught to provide statistics that would help us in getting non-default estimates here. Per a gripe from Benjamin Coutu. This is surely a bug fix, but I'm hesitant to back-patch because of the prospect of destabilizing existing plan choices. Given that it took us this long to notice the bug, it's probably not hurting too many people in the field. Discussion: https://postgr.es/m/20968.1509486...@sss.pgh.pa.us https://git.postgresql.org/pg/commitdiff/7b6c07547190f056b0464098bb5a2247129d7aa2 - Fix corner-case errors in brin_doupdate(). In some cases the BRIN code releases lock on an index page, and later re-acquires lock and tries to check that the tuple it was working on is still there. That check was a couple bricks shy of a load. It didn't consider that the page might have turned into a "revmap" page. (The samepage code path doesn't call brin_getinsertbuffer(), so it isn't protected by the checks for revmap status there.) It also didn't check whether the tuple offset was now off the end of the linepointer array. Since commit 24992c6db the latter case is pretty common, but at least in principle it could have occurred before that. The net result is that concurrent updates of a BRIN index could fail with errors like "invalid index offnum" or "inconsistent range map". Per report from Tomas Vondra. Back-patch to 9.5, since this code is substantially the same in all versions containing BRIN. Discussion: https://postgr.es/m/10d2b9f9-f427-03b8-8ad9-6af4ecacb...@2ndquadrant.com https://git.postgresql.org/pg/commitdiff/62a16572d5714bfb19e2a273e61218be6682d3df - Set the metapage's pd_lower correctly in brin, gin, and spgist indexes. Previously, these index types left the pd_lower field set to the default SizeOfPageHeaderData, which is really a lie because it ought to point past whatever space is being used for metadata. The coding accidentally failed to fail because we never told xlog.c that the metapage is of standard format --- but that's not very good, because it impedes WAL consistency checking, and in some cases prevents compression of full-page images. To fix, ensure that we set pd_lower correctly, not only when creating a metapage but whenever we write it out (these apparently redundant steps are needed to cope with pg_upgrade'd indexes that don't yet contain the right value). This allows telling xlog.c that the page is of standard format. The WAL consistency check mask functions are made to mask only if pd_lower appears valid, which I think is likely unnecessary complication, since any metapage appearing in a v11 WAL stream should contain valid pd_lower. But it doesn't cost much to be paranoid. Amit Langote, reviewed by Michael Paquier and Amit Kapila Discussion: https://postgr.es/m/0d273805-0e9e-ec1a-cb84-d4da400b8...@lab.ntt.co.jp https://git.postgresql.org/pg/commitdiff/81e334ce4e6d687d548e60ad8954b7dfd9e568a2 - pgbench: replace run-time string comparisons with an enum identifier. Minor refactoring that should yield some performance benefit. Fabien Coelho, reviewed by Aleksandr Parfenov Discussion: https://postgr.es/m/alpine.DEB.2.20.1709230538130.4999@lancre https://git.postgresql.org/pg/commitdiff/f987f83de20afe3ba78be1e15db5dffe7488faa7 - Flag index metapages as standard-format in xlog.c calls. btree, hash, and bloom indexes all set up their metapages in standard format (that is, with pd_lower and pd_upper correctly delimiting the unused area); but they mostly didn't inform the xlog routines of this. When calling log_newpage[_buffer], this is bad because it loses the opportunity to compress unused data out of the WAL record. When calling XLogRegisterBuffer, it's not such a performance problem because all of these call sites also use REGBUF_WILL_INIT, preventing an FPI image from being written. But it's still a good idea to provide the flag when relevant, because that aids WAL consistency checking. This completes the project of getting all the in-core index AMs to handle their metapage WAL operations similarly. Amit Kapila, reviewed by Michael Paquier Discussion: https://postgr.es/m/0d273805-0e9e-ec1a-cb84-d4da400b8...@lab.ntt.co.jp https://git.postgresql.org/pg/commitdiff/4c11d2c559e76892156fd08d6a3cf5e1848a017f - Avoid looping through line pointers twice in PageRepairFragmentation(). There doesn't seem to be any good reason to do the filling of the itemidbase[] array separately from the first traversal of the pointers. It's certainly not a win if there are any line pointers with storage, and even if there aren't, this change doesn't insert code into the part of the first loop that will be traversed in that case. So let's just merge the two loops. Yura Sokolov, reviewed by Claudio Freire Discussion: https://postgr.es/m/e49befcc6f1d7099834c6fdf5c675...@postgrespro.ru https://git.postgresql.org/pg/commitdiff/a9169f0200fc57e01cbd216bbd41c9ea3a79a7b0 - First-draft release notes for 10.1. As usual, the release notes for other branches will be made by cutting these down, but put them up for community review first. Note that a fair percentage of the entries apply only to prior branches because their issue was already fixed in 10.0. https://git.postgresql.org/pg/commitdiff/42de8a0255c2509bf179205e94b9d65f9d6f3cf9 - Release notes for 10.1, 9.6.6, 9.5.10, 9.4.15, 9.3.20, 9.2.24. In the v10 branch, also back-patch the effects of 1ff01b390 and c29c57890 on these files, to reduce future maintenance issues. (I'd do it further back, except that the 9.X branches differ anyway due to xlog-to-wal link tag renaming.) https://git.postgresql.org/pg/commitdiff/b35b185bf705c4dbaf21198c81b3d85f4a96804a Robert Haas pushed: - Add sanity check for pg_proc.provariadic. Check that the values from pg_proc.h match what ProcedureCreate would have done. Robert Haas and Amul Sul Discussion: http://postgr.es/m/ca+tgmoz_ugxfq5ygeddmdusj4j_vx7nfnjc6mfy6bgoj3qz...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/35f059e9bdfb3b14ac9d22a9e159d36ec0ccf804 - Fix code related to partitioning schemes for dropped columns. The entry in appinfo->translated_vars can be NULL; if so, we must avoid dereferencing it. Ashutosh Bapat Discussion: http://postgr.es/m/CAFjFpReL7+1ien=-21rhjpo3bv7aam1rq8xglvk2csfagsz...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/cf7ab13bfb450dde50c86fa714a92964ce32b537 - Don't exaggerate the number of temporary blocks read. A read that returns zero bytes (or an error) should not increment the number of temporary blocks read. Thomas Munro Discussion: http://postgr.es/m/CAEepm=21xgihg=wag+o5mfotezfn6kfetpfw+rksneqnqqg...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/ee4673ac071f8352c41cc673299b7ec695f079ff Stephen Frost pushed: - Remove inbound links to sql-createuser. CREATE USER is an alias for CREATE ROLE, not its own command any longer, so clean up references to the 'sql-createuser' link to go to 'sql-createrole' instead. In passing, change a few cases of 'CREATE USER' to be 'CREATE ROLE ... LOGIN'. The remaining cases appear reasonable and also mention the distinction between 'CREATE ROLE' and 'CREATE USER'. Also, don't say CREATE USER "assumes" LOGIN, but rather "includes". Patch-by: David G. Johnston, with assumes->includes by me. Discussion: https://postgr.es/m/CAKFQuwYrbhKV8hH4TEABrDRBwf=gKremF=mlpq6x2ygqxgf...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/0fe2780db4876cb38f9f914c855a54db7c141e2f Michael Meskes pushed: - Make sure ecpglib does accepts digits behind decimal point even for integers in. Informix mode. Spotted and fixed by 高增琦 <pgf...@gmail.com> https://git.postgresql.org/pg/commitdiff/63d6b97fd904232e7c7a8a2b9c52a3cc7eb47bef - Fix float parsing in ecpg INFORMIX mode. https://git.postgresql.org/pg/commitdiff/6976a4f05fc5f9d3b469869e412e0814c8c7ab2a - Improve error message for incorrect number inputs in libecpg. https://git.postgresql.org/pg/commitdiff/7164991caf3858cbd75e5efb7943e11a51ad04f9 Peter Eisentraut pushed: - pg_basebackup: Fix comparison handling of tablespace mappings on Windows. A candidate path needs to be canonicalized before being checked against the mappings, because the mappings are also canonicalized. This is especially relevant on Windows Reported-by: nb <nbe...@gmail.com> Author: Michael Paquier <michael.paqu...@gmail.com> Reviewed-by: Ashutosh Sharma <ashu.coe...@gmail.com> https://git.postgresql.org/pg/commitdiff/067a2259fd2d7050ecf13a82a96e9a95bf8b3785 - doc: Add to hot standby documentation. Document the order of changing certain settings when using hot-standby servers. This is just a logical consequence of what was already documented, but it gives the users some more practical advice. Author: Yorick Peterse <yorickpete...@gmail.com> Reviewed-by: Aleksander Alekseev <a.aleks...@postgrespro.ru> Reviewed-by: Robert Haas <robertmh...@gmail.com> https://git.postgresql.org/pg/commitdiff/387ec70322aaf60127537bc200e20791f0b415ae - doc: Mention pg_stat_wal_receiver in streaming replication docs. Also make the link to pg_stat_replication more precise. Author: Michael Paquier <michael.paqu...@gmail.com> Reviewed-by: Jeff Janes <jeff.ja...@gmail.com> https://git.postgresql.org/pg/commitdiff/ec7ce54204147ccf1a55aaba526ac4b39071f712 - doc: Adjust name in acknowledgments. per request of the named person https://git.postgresql.org/pg/commitdiff/d8c435e1743773eba4e36498479ca6aef28a2d70 - doc: Clarify pgstattuple privileges information. The description has gotten a bit confusing over time, so rewrite the paragraph a bit. Reported-by: Feike Steenbergen <feikesteenber...@gmail.com> https://git.postgresql.org/pg/commitdiff/0f53934164d37682fd6a6d87d57008f9ca03e3d0 - Remove wal_keep_segments from default configuration in PostgresNode.pm. This is only used in the pg_rewind tests, so only set it there. It's better if other tests run closer to a default configuration. Author: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/5eb8bf2d42676523143c1c76ba584bcdcc584f3e - Simplify new test suite handling of passwordcheck. This changes the use of a custom configuration file to enforce the value of preload_shared_libraries to simply load the library during the tests. This removes the restriction of running installcheck on the tests, and simplifies its makefile contrary to what has been introduced in af7211e. Author: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/637a934ab9bac615af6032bb8424056e91988fb8 - pg_ctl: Improve message. Change message for restarting a server from a directory without a PID file. This accounts for the case where a restart happens after an initdb. The new message indicates that the start has not completed yet and might fail. Author: Jesper Pedersen <jesper.peder...@redhat.com> https://git.postgresql.org/pg/commitdiff/4b0fbfdf81e0a847b31d0b430f25f8660d5652c0 - Don't reset additional columns on subscriber to NULL on UPDATE. When a publisher table has fewer columns than a subscriber, the update of a row on the publisher should result in updating of only the columns in common. The previous coding mistakenly reset the values of additional columns on the subscriber to NULL because it failed to skip updates of columns not found in the attribute map. Author: Petr Jelinek <petr.jeli...@2ndquadrant.com> https://git.postgresql.org/pg/commitdiff/a9fce66729ad5217e8219e22e595974059c21291 - doc: Convert ids to upper case at build time. This makes the produced HTML anchors upper case, making it backward compatible with the previous (9.6) build system. Reported-by: Thomas Kellerer <spam_ea...@gmx.net> https://git.postgresql.org/pg/commitdiff/49df45acd8d40ee172c2f5491485de997c5f1020 - Fix incorrect use of bool. NSUnLinkModule() doesn't take a bool as second argument but one of set of specific constants. The numeric values are the same in this case, but clean it up while we're cleaning up bool use elsewhere. Reviewed-by: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/cb29ff8315ef74043f279c21783cca8aaf79ebde - ecpg: Use bool instead of int. Use "bool" for Boolean variables, rather than "int", matching backend change f505edace12655f3491b9c91991731e2b6bf1f0b. Reviewed-by: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/4703a480a9e15f8b8b481dac44f2e36a4a687fe4 - ecpg: Remove useless return values. Remove useless or inconsistently used return values from functions, matching backend changes 99bf328237d89e0fd22821a940d4af0506353218 and 791359fe0eae83641f0929159d5861359d395e97. Reviewed-by: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/d6148e7d44e91cac8bd21d8c6d3aaaf1eed10486 - doc: Update text for new recovery_target_lsn setting. Reported-by: Tomonari Katsumata <t.katsumata1...@gmail.com> Author: Michael Paquier <michael.paqu...@gmail.com> https://git.postgresql.org/pg/commitdiff/bc105c4be057177c6fe7bd93b31eb1dc66ed4395 Noah Misch pushed: - In client support of v10 features, use standard schema handling. Back-patch to v10. This continues the work of commit 080351466c5a669bf35a323bdec9e296330a5dbb. Discussion: https://postgr.es/m/CAKOSWN=ds66zlw2sqkltm8wbxfgdbc_odkmt3djfpt2me5k...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/51f4d3ed7ea40998f66e15830aa84009c0e36e11 - Ignore CatalogSnapshot when checking COPY FREEZE prerequisites. This restores the ability, essentially lost in commit ffaa44cb559db332baeee7d25dedd74a61974203, to use COPY FREEZE under REPEATABLE READ isolation. Back-patch to 9.4, like that commit. Reviewed by Tom Lane. Discussion: https://postgr.es/m/ca+tgmoahwdm-7fperbxzu9uz99lpmumepsxltw9tmrogzwn...@mail.gmail.com https://git.postgresql.org/pg/commitdiff/bab3a714b62160f0e89c8943c5e054649cd58945 == Pending Patches == Nikolay Shaplov sent in another revision of a patch to move all am-related reloption code into src/backend/access/[am-name] and get rid of relopt_kind for custom AM. Alexander Kuzmenkov sent in another revision of a patch to implement full merge join on comparison clause. Alexander Korotkov sent in another revision of a patch to fix the cube contrib extension's ORDER BY issue and KNN operations. Christoph Dreis sent in a patch to remove instances of "the the" in the code base. Dagfinn Ilmari Mannsåker sent in a patch to fix a typo in a get_collation_name() comment. Tom Lane sent in a patch to rewrite PL/PythonU's typeio code. Tomas Vondra sent in another revision of a patch to implement BRIN multi-range min-max indexes and BRIN bloom indexes. Andres Freund sent in another revision of a patch to speed up overflow checks for int and float types. Kyotaro HORIGUCHI sent in a patch to add several pieces of vacuum information to the pg_stat_*_tables. Chris Travers sent in two revisions of a patch to restrict pg_rewind to whitelisted directories. Lætitia Avrot and Amit Langote traded patches to add several missing options to the ALTER TABLE synopsis. Amul Sul sent in two more revisions of a patch to implement hash partitioning. Thomas Munro sent in two more revisions of a patch to implement parallel hash. Amit Langote sent in three more revisions of a patch to prune partitions faster. Amit Kapila sent in two more revisions of a patch to parallelize queries containing initplans. Raúl Marín Rodríguez sent in two revisions of a patch to add support for pow() in pgbench. Alexander Korotkov sent in a patch to add VP trees as an SP-GiST extension. Anastasia Lubennikova sent in another revision of a patch to implement covering + unique indexes. Kyotaro HORIGUCHI sent in another revision of a patch to restrict maximum keep segments by repslots. Kyotaro HORIGUCHI sent in another revision of a patch to protect syscache from bloating with negative cache entries. Haribabu Kommi sent in another revision of a patch to prepare for pluggable storage. David Rowley sent in a patch to remove [Merge]Append nodes which contain a single subpath. Peter Eisentraut sent in a patch to consistently catch errors from Python _New() functions. Simon Riggs sent in another revision of a patch to remove the secondary checkpoint. Vitaly Burovoy sent in two revisions of a patch to fix dumping pre-10 DBs by pg_dump10 if table "name" exists. Peter Eisentraut sent in a patch to implement SQL procedures, which can span transactions. Peter Eisentraut sent in a patch to implement transaction control in PL/PythonU procedures. Shubham Barai sent in another revision of a patch to implement predicate locking in GiST indexes. Takayuki Tsunakawa sent in another revision of a patch to implement statement-level rollback. Peter Eisentraut sent in a patch to add support for INSERT OVERRIDING to the PostgreSQL FDW. Peter Eisentraut sent in a patch to allow returning dynamic result sets from procedures. Peter Eisentraut sent in two revisions of a patch to add const decorations to many char * arguments in functions. Oleg Ivanov sent in a patch to implement generic WAL compression. David Rowley sent in a patch to support removing LEFT JOINs with DISTINCT/GROUP BY. Andreas Karlsson sent in another revision of a patch to implement REINDEX CONCURRENTLY. Pavel Stěhule sent in another revision of a patch to enable specifying sort order for psql's describe commands when size is present. Petr Jelínek sent in another revision of a patch to fix walsender timeouts when decoding large transactions. Masahiko Sawada sent in another revision of a patch to add an explicit relation name in VACUUM VERBOSE log. Ildus Kurbangaliev sent in another revision of a patch to add custom compression methods. Tom Lane sent in a patch to fix how reltuples are counted in VACUUM. Andreas Karlsson sent in another revision of a patch to add GnuTLS support. Fabien COELHO sent in another revision of a patch to pgbench to use enum for meta commands. David Rowley sent in a patch to implement ALists (ArrayLists), these being like a List, only using an array as the data structure rather than a linked list. Piotr Stefaniak and Nikita Glukhov traded patches to implement SQL-JSON. Thomas Munro sent in a patch to fix some LDAP URI decoding bugs. Antonin Houska sent in another revision of a patch to implement aggregate pushdown. David Fetter sent in a patch to skip an unneeded temp file in 'make html'. Thomas Munro sent in two revisions of a patch to add ldaps support for ldap authentication. Andres Freund sent in a patch to fix pruning of locked and updated tuples. Fabrízio de Royes Mello sent in two more revisions of a patch to implement hooks for session_start and session_end. Tom Lane sent in two more revisions of a patch to improve compactify_tuples. Fabien COELHO sent in another revision of a patch to pgbench to enable storing select results into variables. Robert Haas sent in two more revisions of a patch to make Gather nodes faster. Amit Kapila sent in another revision of a patch to ensure that parallel paths include tlist cost. Lucas (lucas75 AT gmail DOT com) sent in a patch to add a --lock-early option to pg_dump. Emre Hasegeli sent in another revision of a patch to refactor the geometric functions and operators code, provide a header file for built-in float datatypes, use the built-in float datatype to implement geometric types, fix obvious problems around the line datatype, check for float -0 after multiplications and divisions, and improve test coverage of geometric types. David Christensen sent in a patch to add a two-argument form of current_setting(NAME, FALLBACK), which avoids erroring out on, for example, non-existence of the setting to be set. Noah Misch sent in a patch to fix some encoding issues encountered with libxml2 functions in UTF-8-encoded databases. -- Sent via pgsql-announce mailing list (pgsql-announce@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-announce