== PostgreSQL Weekly News - January 13, 2019 ==
От | David Fetter |
---|---|
Тема | == PostgreSQL Weekly News - January 13, 2019 == |
Дата | |
Msg-id | 20190113214545.GA27163@fetter.org обсуждение исходный текст |
Список | pgsql-announce |
== PostgreSQL Weekly News - January 13, 2019 == The Turkish PostgreSQL conference will take place January 24, 2019 in Ankara. https://postgresql.tubitak.gov.tr/ == PostgreSQL Product News == pgAdmin4 4.0, a web- and native GUI control center for PostgreSQL, released. https://www.pgadmin.org/docs/pgadmin4/dev/release_notes_4_0.html == PostgreSQL Jobs for January == http://archives.postgresql.org/pgsql-jobs/2019-01/ == PostgreSQL Local == FOSDEM PGDay 2019, a one day conference held before the main FOSDEM event will be held in Brussels, Belgium, on Feb 1st, 2019. https://2019.fosdempgday.org/ Prague PostgreSQL Developer Day 2019 (P2D2 2019) is a two-day conference that will be held on February 13-14, 2019 in Prague, Czech Republic. http://www.p2d2.cz/ PGConf India 2019 will be on February 13-15, 2019 in Bengaluru, Karnataka. http://pgconf.in/ pgDay Paris 2019 will be held in Paris, France on March 12, 2019 at 199bis rue Saint-Martin. http://2019.pgday.paris/ PGConf APAC 2019 will be held in Singapore March 19-21, 2019. http://2019.pgconfapac.org/ The German-speaking PostgreSQL Conference 2019 will take place on May 10, 2019 in Leipzig. The CfP is open until February 26, 2019 at http://2019.pgconf.de/cfp http://2019.pgconf.de/ PGDay.IT 2019 will take place May 16th and May 17th in Bologna, Italy. Both the CfP https://2019.pgday.it/en/blog/cfp and the Call for Workshops https://2019.pgday.it/en/blog/cfw are open until January 15, 2019. https://2019.pgday.it/en/ PGCon 2019 will take place in Ottawa on May 28-31, 2019. The CfP is open through January 19, 2019 at http://www.pgcon.org/2019/papers.php https://www.pgcon.org/2018/schedule/ Swiss PGDay 2019 will take place in Rapperswil (near Zurich) on June 28, 2019. The CfP is open January 17, 2019 through April 18, 2019, and registration will open January 17, 2019. http://www.pgday.ch/2019/ == 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 PST8PDT to david@fetter.org. == Applied Patches == Peter Eisentraut pushed: - pg_basebackup: Use atexit(). Instead of using our custom disconnect_and_exit(), just register the desired cleanup using atexit() and use the standard exit() to leave the program. Reviewed-by: Alvaro Herrera <alvherre@2ndquadrant.com> Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://www.postgresql.org/message-id/flat/ec4135ba-84e9-28bf-b584-0e78d47448d5@2ndquadrant.com/ https://git.postgresql.org/pg/commitdiff/a4205fa00d526c3158c677a3d82042f88d429f84 - initdb: Use atexit(). Replace exit_nicely() calls with standard exit() and register the cleanup actions using atexit(). The coding pattern used here mirrors existing use in pg_basebackup.c. Reviewed-by: Alvaro Herrera <alvherre@2ndquadrant.com> Reviewed-by: Michael Paquier <michael@paquier.xyz> Discussion: https://www.postgresql.org/message-id/flat/ec4135ba-84e9-28bf-b584-0e78d47448d5@2ndquadrant.com/ https://git.postgresql.org/pg/commitdiff/3913a40ff104fd26f795c3d4c402ec27a1f86385 - isolationtester: Use atexit(). Replace exit_nicely() calls with standard exit() and register the cleanup actions using atexit(). Reviewed-by: Alvaro Herrera <alvherre@2ndquadrant.com> Discussion: https://www.postgresql.org/message-id/flat/ec4135ba-84e9-28bf-b584-0e78d47448d5@2ndquadrant.com/ https://git.postgresql.org/pg/commitdiff/be2e329f2e700032df087e08ac2103ba3d1fa811 - Add value 'current' for recovery_target_timeline. This value represents the default behavior of using the current timeline. Previously, this was represented by an empty string. (Before the removal of recovery.conf, this setting could not be chosen explicitly but was used when recovery_target_timeline was not mentioned at all.) Discussion: https://www.postgresql.org/message-id/flat/6dd2c23a-4162-8469-410f-bfe146e28c0c@2ndquadrant.com/ Reviewed-by: David Steele <david@pgmasters.net> Reviewed-by: Michael Paquier <michael@paquier.xyz> https://git.postgresql.org/pg/commitdiff/ff85306055ede1fbca86ca4dfc4d48172342462b - Create INSTALL file using Pandoc. Replace using lynx with using pandoc. Pandoc creates better looking output and it avoids the delicate locale/encoding issues of lynx because it always uses UTF-8 for both input and output. Note: requires Pandoc >=1.13 Discussion: https://www.postgresql.org/message-id/flat/dcfaa74d-8037-bb32-f9e0-3fea7ccf4551@2ndquadrant.com/ Reviewed-by: Mi Tar <mmitar@gmail.com> https://git.postgresql.org/pg/commitdiff/96b8b8b6f9d8de4af01a77797273ad88c7a8e32e - doc: Correct documentation of install-time environment variables. Since approximately PostgreSQL 10, it is no longer required that environment variables at installation time such as PERL, PYTHON, TCLSH be "full path names", so change that phrasing in the installation instructions. (The exact time of change appears to differ for PERL and the others, but it works consistently in PostgreSQL 10.) Also while we're here document the defaults for PERL and PYTHON, but since the search list for TCLSH is so long, let's leave that out so we don't need to maintain a copy of that list in the installation instructions. https://git.postgresql.org/pg/commitdiff/8b89a88618dff78dec25f08ee0ca83824b69b34b - Change default of recovery_target_timeline to 'latest'. This is what one usually wants for recovery and almost always wants for a standby. Discussion: https://www.postgresql.org/message-id/flat/6dd2c23a-4162-8469-410f-bfe146e28c0c@2ndquadrant.com/ Reviewed-by: David Steele <david@pgmasters.net> Reviewed-by: Michael Paquier <michael@paquier.xyz> https://git.postgresql.org/pg/commitdiff/0acb3bc33af11a57d560cbce5a74246eb3e642db - configure: Update python search order. Some systems don't ship with "python" by default anymore, only "python3" or "python2" or some combination, so include those in the configure search. Discussion: https://www.postgresql.org/message-id/flat/1457.1543184081%40sss.pgh.pa.us#c9cc1199338fd6a257589c6dcea6cf8d https://git.postgresql.org/pg/commitdiff/7291733ac93fbc7a30255a7543729678d29afc21 - Make INSTALL makefile rule more robust. With the previous rule, if pandoc was missing, a zero-length output file would be created without an error from make. To improve that, write the rule as two separate commands without a pipe. Reported-by: Tom Lane <tgl@sss.pgh.pa.us> https://git.postgresql.org/pg/commitdiff/bb874e30fbf9e85bdb117bad34865a5fae29dbf6 Andrew Gierth pushed: - doc: document that INFO messages always go to client. In passing add a couple of links to the message severity table. Backpatch because it's always been this way. Author: Karl O. Pinc <kop@meme.com> https://git.postgresql.org/pg/commitdiff/93fedda6f093ca0b47a27b91f3008afc43c49bcc Tatsuo Ishii pushed: - Doc: fix meaning of acronym "btree". Acronym "btree" better means "multi-way balanced tree" rather than "multi-way binary tree". Discussion: https://postgr.es/m/20190105.183532.1686260542006440682.t-ishii%40sraoss.co.jp https://git.postgresql.org/pg/commitdiff/a67212de198c9da70f04d2462474dc26965530c8 Michaël Paquier pushed: - Add --disable-page-skipping and --skip-locked to vacuumdb. DISABLE_PAGE_SKIPPING is available since v9.6, and SKIP_LOCKED since v12. They lacked equivalents for vacuumdb, so this closes the gap. Author: Nathan Bossart Reviewed-by: Michael Paquier, Masahiko Sawada Discussion: https://postgr.es/m/FFE5373C-E26A-495B-B5C8-911EC4A41C5E@amazon.com https://git.postgresql.org/pg/commitdiff/354e95d1f2122d20c1c5895eb3973cfb0e8d0cc2 - Fix grammar mistakes in md.c. Author: Kirk Jamison Discussion: https://postgr.es/m/D09B13F772D2274BB348A310EE3027C640AC54@g01jpexmbkw24 https://git.postgresql.org/pg/commitdiff/5d59a6c5eaff4a58322683e450e76a11d943d322 - Update unaccent rules with release 34 of CLDR for Latin-ASCII.xml. This has required an update of the python script generating the rules, as its format has changed in release 29. This release has also added new punctuation and symbols, and a new set of rules has been generated to include them. The way to find newest versions of Latin-ASCII gets also more clearly documented. Author: Hugh Ranalli, Michael Paquier Discussion: https://postgr.es/m/15548-cef1b3f8de190d4f@postgresql.org https://git.postgresql.org/pg/commitdiff/e1c1d5444e430375be9bc17366d17f1acd87ec0b - Improve error messages for incorrect types of logical replication targets. If trying to use something else than a plain table as logical replication target, a rather-generic error message gets used to report the problem. This can be confusing when it comes to foreign tables and partitioned tables, so use more dedicated messages in these cases. Author: Amit Langote Reviewed-by: Peter Eisentraut, Magnus Hagander, Michael Paquier Discussion: https://postgr.es/m/41799bee-40eb-7bb5-80b1-325ce17518bc@lab.ntt.co.jp https://git.postgresql.org/pg/commitdiff/373bda61d2d620e704815553978726c9be9e1209 - Fix error message for logical replication targets. This fixes an oversight from 373bda6. Noted by Erik Rijkers. https://git.postgresql.org/pg/commitdiff/9f527a6e9a70ea668616e20d05c31d7a086669a4 Tom Lane pushed: - Doc: update our docs about kernel IPC parameters on *BSD. runtime.sgml said that you couldn't change SysV IPC parameters on OpenBSD except by rebuilding the kernel. That's definitely wrong in OpenBSD 6.x, and excavation in their man pages says it changed in OpenBSD 3.3. Update NetBSD and OpenBSD sections to recommend adjustment of the SEMMNI and SEMMNS settings, which are painfully small by default on those platforms. (The discussion thread contemplated recommending that people select POSIX semaphores instead, but the performance consequences of that aren't really clear, so I'll refrain.) Remove pointless discussion of SEMMNU and SEMMAP from the FreeBSD section. Minor other wordsmithing. Discussion: https://postgr.es/m/27582.1546928073@sss.pgh.pa.us https://git.postgresql.org/pg/commitdiff/a2b22d8e804511ca7f0f712e8365a6a013b0254e - Update docs & tests to reflect that unassigned OLD/NEW are now NULL. For a long time, plpgsql has allowed trigger functions to parse references to OLD and NEW even if the current trigger event type didn't assign a value to one or the other variable; but actually executing such a reference would fail. The v11 changes to use "expanded records" for DTYPE_REC variables changed the behavior so that the unassigned variable now reads as a null composite value. While this behavioral change was more or less unintentional, it seems that leaving it like this is better than adding code and complexity to be bug-compatible with the old way. The change doesn't break any code that worked before, and it eliminates a gotcha that often required extra code to work around. Hence, update the docs to say that these variables are "null" not "unassigned" when not relevant to the event type. And add a regression test covering the behavior, so that we'll notice if we ever break it again. Per report from Kristjan Tammekivi. Discussion: https://postgr.es/m/CAABK7uL-uC9ZxKBXzo_68pKt7cECfNRv+c35CXZpjq6jCAzYYA@mail.gmail.com https://git.postgresql.org/pg/commitdiff/59029b6fb71e187c150d12f4c37bb2bf982d3125 - Reduce the size of the fmgr_builtin_oid_index[] array. This index array was originally defined to have 10000 entries (ranging up to FirstGenbkiObjectId), but we really only need entries up to the last existing builtin function OID, currently 6121. That saves close to 8K of never-accessed space in the server executable, at the small price of one more fetch in fmgr_isbuiltin(). We could reduce the array size still further by renumbering a few of the highest-numbered builtin functions; but there's a small risk of breaking clients that have chosen to hardwire those function OIDs, so it's not clear if it'd be worth the trouble. (We should, however, discourage future patches from choosing function OIDs above 6K as long as there's still lots of space below that.) Discussion: https://postgr.es/m/12359.1547063064@sss.pgh.pa.us https://git.postgresql.org/pg/commitdiff/8ff5f824dca75174e3d3efc7c1182cf1d388bacc - Use perfect hashing, instead of binary search, for keyword lookup. We've been speculating for a long time that hash-based keyword lookup ought to be faster than binary search, but up to now we hadn't found a suitable tool for generating the hash function. Joerg Sonnenberger provided the inspiration, and sample code, to show us that rolling our own generator wasn't a ridiculous idea. Hence, do that. The method used here requires a lookup table of approximately 4 bytes per keyword, but that's less than what we saved in the predecessor commit afb0d0712, so it's not a big problem. The time savings is indeed significant: preliminary testing suggests that the total time for raw parsing (flex + bison phases) drops by ~20%. Patch by me, but it owes its existence to Joerg Sonnenberger; thanks also to John Naylor for review. Discussion: https://postgr.es/m/20190103163340.GA15803@britannica.bec.de https://git.postgresql.org/pg/commitdiff/c64d0cd5ce24a344798534f1bc5827a9199b7a6e - Remove unnecessary #include. Discussion: https://postgr.es/m/4380.1547143967@sss.pgh.pa.us https://git.postgresql.org/pg/commitdiff/a968d54c5df196e06305c1efa731657f9536ec7a - Fix C++ compile failures in headers. Avoid using "typeid" as a parameter name in header files, since that is a C++ keyword. These cases were introduced recently, in 04fe805a1 and 586b98fdf. Since I'm an incurable neatnik, also rename these parameters in the underlying function definitions. That's not really necessary per project rules, but I don't like function declarations that don't quite agree with the underlying definitions. Per src/tools/pginclude/cpluspluscheck. https://git.postgresql.org/pg/commitdiff/eaf0380eccd53df5ce7d1fed41f4ca16f4146408 - Add .gitignore entry for a derived file created by "make distprep". I chanced to notice that "make distprep" leaves a state of the tree that git complains about. It's been like this for awhile, but given the lack of complaints it probably doesn't need back-patching. https://git.postgresql.org/pg/commitdiff/f6cddbd4d7c0ab222f884883ef297b81b35c816e - Avoid sharing PARAM_EXEC slots between different levels of NestLoop. Up to now, createplan.c attempted to share PARAM_EXEC slots for NestLoopParams across different plan levels, if the same underlying Var was being fed down to different righthand-side subplan trees by different NestLoops. This was, I think, more of an artifact of using subselect.c's PlannerParamItem infrastructure than an explicit design goal, but anyway that was the end result. This works well enough as long as the plan tree is executing synchronously, but the feature whereby Gather can execute the parallelized subplan locally breaks it. An upper NestLoop node might execute for a row retrieved from a parallel worker, and assign a value for a PARAM_EXEC slot from that row, while the leader's copy of the parallelized subplan is suspended with a different active value of the row the Var comes from. When control eventually returns to the leader's subplan, it gets the wrong answers if the same PARAM_EXEC slot is being used within the subplan, as reported in bug #15577 from Bartosz Polnik. This is pretty reminiscent of the problem fixed in commit 46c508fbc, and the proper fix seems to be the same: don't try to share PARAM_EXEC slots across different levels of controlling NestLoop nodes. This requires decoupling NestLoopParam handling from PlannerParamItem handling, although the logic remains somewhat similar. To avoid bizarre division of labor between subselect.c and createplan.c, I decided to move all the param-slot-assignment logic for both cases out of those files and put it into a new file paramassign.c. Hopefully it's a bit better documented now, too. A regression test case for this might be nice, but we don't know a test case that triggers the problem with a suitably small amount of data. Back-patch to 9.6 where we added Gather nodes. It's conceivable that related problems exist in older branches; but without some evidence for that, I'll leave the older branches alone. Discussion: https://postgr.es/m/15577-ca61ab18904af852@postgresql.org https://git.postgresql.org/pg/commitdiff/1db5667bac63d0be825c375c4aeb8fb29b9a50bd - Improve missing-program error handling in make_ctags and make_etags. If ctags (resp. etags) isn't installed, these scripts naturally fail, but the error messages were less clear than one could wish. It seems worth installing an explicit test to improve that. Nikolay Shaplov, with suggestions from Michael Paquier and Andrew Dunstan Discussion: https://postgr.es/m/2394207.ccz7JgCJsh@x200m https://git.postgresql.org/pg/commitdiff/52a301e0d95aa25aa9bbc0eefd1167458e3e0cab Álvaro Herrera pushed: - pgbench: add \cset and \gset commands. These commands allow assignment of values produced by queries to pgbench variables, where they can be used by further commands. \gset terminates a command sequence (just like a bare semicolon); \cset separates multiple queries in a compound command, like an escaped semicolon (\;). A prefix can be provided to the \-command and is prepended to the name of each output column to produce the final variable name. This feature allows pgbench scripts to react meaningfully to the actual database contents, allowing more powerful benchmarks to be written. Authors: Fabien Coelho, Álvaro Herrera Reviewed-by: Amit Langote <Langote_Amit_f8@lab.ntt.co.jp> Reviewed-by: Stephen Frost <sfrost@snowman.net> Reviewed-by: Pavel Stehule <pavel.stehule@gmail.com> Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Reviewed-by: Tatsuo Ishii <ishii@sraoss.co.jp> Reviewed-by: Rafia Sabih <rafia.sabih@enterprisedb.com> Discussion: https://postgr.es/m/alpine.DEB.2.20.1607091005330.3412@sto https://git.postgresql.org/pg/commitdiff/6260cc550b0e60052168518a0338e440b67cf24e - Don't use address of array as boolean. Per buildfarm https://git.postgresql.org/pg/commitdiff/dacadcd1f32873d930b3953d3055dc7cb9548e48 - Move inheritance expansion code into its own file. This commit moves expand_inherited_tables and underlings from optimizer/prep/prepunionc.c to optimizer/utils/inherit.c. Also, all of the AppendRelInfo-based expression manipulation routines are moved to optimizer/utils/appendinfo.c. No functional code changes. One exception is the introduction of make_append_rel_info, but that's still just moving around code. Also, stop including <limits.h> in prepunion.c, which no longer needs it since 3fc6e2d7f5b6. I (Álvaro) noticed this because Amit was copying that to inherit.c, which likewise doesn't need it. Author: Amit Langote Discussion: https://postgr.es/m/3be67028-a00a-502c-199a-da00eec8fb6e@lab.ntt.co.jp https://git.postgresql.org/pg/commitdiff/b60c39759908bb2a2dbcfc108ec19bdbdcc278e8 Andrew Dunstan pushed: - Fix missing values when doing ALTER TABLE ALTER COLUMN TYPE. This was an oversight in commit 16828d5c. If the table is going to be rewritten, we simply clear all the missing values from all the table's attributes, since there will no longer be any rows with the attributes missing. Otherwise, we repackage the missing value in an array constructed with the new type specifications. Backpatch to release 11. This fixes bug #15446, reported by Dmitry Molotkov Reviewed by Dean Rasheed https://git.postgresql.org/pg/commitdiff/3b174b1a355f0de2d433c16eb350b3356bdd08b8 - Free pre-modification HeapTuple in ALTER TABLE ... TYPE ... This was an oversight in commit 3b174b1a3. Per offline gripe from Alvaro Herrera Backpatch to release 11. https://git.postgresql.org/pg/commitdiff/e33884d4122b56fc0dbff3d8cedd8177334db838 - Make DLSUFFIX easily discoverable by build scripts. This will enable things like the buildfarm client to discover more reliably if certain libraries have been installed. Discussion: https://postgr.es/m/859e7c91-7ef4-d4b4-2ca2-8046e0cbee09@2ndQuadrant.com Backpatch to all live branches. https://git.postgresql.org/pg/commitdiff/b40cb99b855563ab8dc878b5bc1b22a6735a57b6 Amit Kapila pushed: - Extend pg_stat_statements_reset to reset statistics specific to a.particular user/db/query. The function pg_stat_statements_reset() is extended to accept userid, dbid, and queryid as input parameters. Now, it can discard the statistics gathered so far by pg_stat_statements corresponding to the specified userid, dbid, and queryid. If no parameter is specified or all the specified parameters have default value aka 0, it will discard all statistics as per the old behavior. The new behavior is useful to get the fresh statistics for a specific user/database/query without resetting all the existing statistics. Author: Haribabu Kommi, with few additional changes by me Reviewed-by: Michael Paquier, Amit Kapila and Fujii Masao Discussion: https://postgr.es/m/CAJrrPGcyh-gkFswyc6C661K6cknL0XkNqVT0sQt2mFNMR4HRKA@mail.gmail.com https://git.postgresql.org/pg/commitdiff/43cbedab8ff1eef4088807ffc1a64a107de67af6 Andres Freund pushed: - Remove heapam.h include made superfluous by b60c3975990. Noticed this while working on another patch. Author: Andres Freund https://git.postgresql.org/pg/commitdiff/1845ca2cfd1f7fd6b536900cf129f6734a4ddded Noah Misch pushed: - Make Emacs perl-mode indent more like perltidy. This especially helps braces that surround code blocks. Back-patch to v11, where commit 56fb890ace8ac0ca955ae0803c580c2074f876f6 first appeared; before that, settings were even more distant from perltidy. Reviewed by Andrew Dunstan. Discussion: https://postgr.es/m/20190103055355.GB267595@gust.leadboat.com https://git.postgresql.org/pg/commitdiff/472e1e4cf64b81b1ecae900db8115deb250ba8bc == Pending Patches == Etsuro Fujita sent in another revision of a patch to refactor the PostgreSQL FDW's DML execution hook functions. Amit Khandekar sent in a patch to restore the default_with_oids GUC and add a check-hook that throws an error when it's set to true. Jesper Pedersen sent in a patch to highlight the fact that the -j option isn't passed down to vacuumdb by default. Nikolay Shaplov sent in another revision of a patch to replace StdRdOptions with individual binary reloptions representation for each relation kind. Christoph Berg sent in two revisions of a patch to add more flexibility for passing custom compiler flags, ensuring that C++ "just works." Michaël Paquier sent in another revision of a patch to add --skip-locked and friends to vacuumdb. John Naylor sent in two more revisions of a patch to avoid creation of the free space map for small heap relations and conditionally skip transfer of FSMs during pg_upgrade. Amit Langote and Michaël Paquier traded patches to error out when foreign or partitioned tables are used as targets of logical replication. Michael Banck and Fabien COELHO traded patches to allow enabling and disabling page checksums offline. Amit Kapila and Dilip Kumar traded patches to provide interfaces to store and fetch undo records. Haribabu Kommi and Amit Kapila traded patches to extend pg_stat_statements_reset to reset statistics specific to a particular user/db/query. Amit Langote sent in five more revisions of a patch to speed up planning with partitions. Peter Geoghegan sent in another revision of a patch to make all nbtree entries unique by having heap TIDs participate in comparisons. Daisuke Higuchi sent in two revisions of a patch to fix some issues during Windows start. Artur Zakirov sent in another revision of a patch to make it possible to use shared ispell dictionaries. Konstantin Knizhnik sent in another revision of a patch to implement compression for libpq. Surafel Temesgen and Tomáš Vondra traded patches to add PERCENT as an option to FETCH FIRST. Kyotaro HORIGUCHI sent in another revision of a patch to improve selectivity estimates for range queries. Etsuro Fujita and Amit Langote traded patches to add child EC members for only the non-dummy children. Masahiko Sawada sent in two more revisions of a patch to add a DISABLE_INDEX_CLEANUP option to VACUUM. Amit Langote sent in a patch to ensure PK-side action triggers for partitions after being detached and stop tracking foreign key inheritance by dependencies. Daniel Gustafsson sent in a patch to fix some odd wording in a comment in the advanced tutorial. Michaël Paquier sent in another revision of a patch to make WAL receiver startup rely on GUC context for primary_conninfo and primary_slot_name. Andreas Karlsson sent in another revision of a patch to inline CTEs. Chapman Flack, Artur Zakirov, and Pavel Stěhule traded patches to fix a problem with XMLTABLE and XPATH. Dilip Kumar sent in another revision of a patch to implement an UNDO worker and transaction rollback using same. Nikita Glukhov sent in another revision of a patch to implement kNN searches for B-tree indexes. KaiGai Kohei sent in another revision of a patch to fix a bug in the way extensions can munge paths in the planner. Nikita Glukhov sent in another revision of a patch to implement JSONPATH. Peter Eisentraut sent in another revision of a patch to implement a unified logging system for command-line programs. Andrew Gierth sent in another revision of a patch to use the Ryu routines to make floating point output faster and more precise. Peter Eisentraut sent in another revision of a patch to implement generated columns, both virtual and stored. Andres Freund sent in a patch to remove all "INTERFACE ROUTINE" style comments. David Rowley sent in another revision of a patch to allow lock acquisitions for partitions to be delayed. Amit Kapila sent in another revision of a patch to implement logical decoding for operations on zheap tables. Dmitry Dolgov sent in two more revisions of a patch to add appropriate access_method dumps to pg_dump. Alexey Bashtanov sent in two more revisions of a patch to log bind parameter values on error. Michaël Paquier sent in a PoC patch to use O_DIRECT for relations and SLRUs. David Rowley sent in another revision of a patch to forgo generating single-subpath Append and MergeAppend paths. Tomáš Vondra sent in another revision of a patch to implement multivariate histograms and MCV lists. Paul Martinez sent in a patch to include all columns in the default names for foreign key constraints. Tom Lane sent in a patch to make heap.c's RemoveStatistics send out an sinval message commanding deletion of negative STATRELATTINH entries that match the OID of the table being deleted. James Coleman sent in another revision of a patch to prove IS NOT NULL inference for ScalarArrayOpExpr.
В списке pgsql-announce по дате отправления: