== PostgreSQL Weekly News - June 17 2018 ==

Поиск
Список
Период
Сортировка
От David Fetter
Тема == PostgreSQL Weekly News - June 17 2018 ==
Дата
Msg-id 20180617222907.GA14144@fetter.org
обсуждение исходный текст
Список pgsql-announce
== PostgreSQL Weekly News - June 17 2018 ==

PostgreSQL Conference Europe 2018 will be held on October 23-26, 2018 at the
Lisbon Marriott Hotel in Lisbon, Portugal. The CfP is open through August 6,
2018 midnight CET at https://2018.pgconf.eu/callforpapers
https://2017.pgconf.eu/

== PostgreSQL Product News ==

Pgpool-II 3.7.4, 3.6.11, 3.5.15, and 3.4.18 released.
http://www.pgpool.net/docs/latest/en/html/release.html

repmgr 4.0.6, a replication manager for PostgreSQL, released.
https://repmgr.org/docs/4.0/release-4.0.6.html

== PostgreSQL Jobs for June ==

http://archives.postgresql.org/pgsql-jobs/2018-06/

== PostgreSQL Local ==

PGDay.IT 2018 will take place in Lazise on Lake Garda on June 29, 2018.
https://2018.pgday.it/en/

Swiss PGDay 2018 will take place in Rapperswil (near Zurich) on June 29, 2018.
Registration is open through June 28, 2018.
http://www.pgday.ch/2018/

PGConf.Brazil 2018 will take place in São Paulo, Brazil on August 3-4 2018.
http://pgconf.com.br

PG Day France 2018 will take place in Marseille on June 26, 2018.
http://pgday.fr/

pgConf UK 2018 will be held on July 3, 2018 in London.
http://www.pgconf.uk/

The Portland PostgreSQL Users Group will be holding a PGDay on September 10,
2018 in Portland, OR.  The CfP is open at https://goo.gl/forms/E0CiUQGSZGMYwh922
https://pdx.postgresql.us/pdxpgday2018

PgConf Silicon Valley 2018 will be held in San Francisco on September 5-7, 2018.
https://2018.postgresopen.org/

PostgresConf South Africa 2018 will take place in Johannesburg on October 9, 2018
The Call for Papers is open through June 30, 2018.
https://postgresconf.org/conferences/SouthAfrica2018

2Q PGConf will be on December 4-5, 2018 in Chicago, IL.  The CfP is open through
August 27, 2018 at midnight Pacific Time at http://www.2qpgconf.com/#cfp
http://www.2qpgconf.com/

PGConf.ASIA 2018 will take place on December 10-12, 2018 in Akihabara, Tokyo,
Japan.  The CfP is open until midnight, July 31, 2018, Japan time at
pgconf-asia-2018-submission(at)pgconf(dot)asia
http://www.pgconf.asia/EN/2018/

== 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 david@fetter.org, German language to pwn@pgug.de, Italian
language to pwn@itpug.org.

== Applied Patches ==

Michaël Paquier pushed:

- Fix a couple of bugs with replication slot advancing feature.  A review of the
  code has showed up a couple of issues fixed by this commit: - Physical slots
  have been using the confirmed LSN position as a start comparison point which
  is always 0/0, instead use the restart LSN position (logical slots need to use
  the confirmed LSN position, which was correct).  - The actual slot update was
  incorrect for both physical and logical slots.  Physical slots need to use
  their restart_lsn as base comparison point (confirmed_flush was used because
  of previous point), and logical slots need to begin reading WAL from
  restart_lsn (confirmed_flush was used as well), while confirmed_flush is
  compiled depending on the decoding context and record read, and is the LSN
  position returned back to the caller.  - Never return 0/0 if a slot cannot be
  advanced.  This way, if a slot is advanced while the activity is idle, then
  the same position is returned to the caller over and over without raising an
  error.  Instead return the LSN the slot has been advanced to.  With repetitive
  calls, the same position is returned hence caller can directly monitor the
  difference in progress in bytes by doing simply LSN difference calculations,
  which should be monotonic.  Note that as the slot is owned by the backend
  advancing it, then the read of those fields is fine lock-less, while updates
  need to happen while the slot mutex is held, so fix that on the way as well.
  Other locks for in-memory data of replication slots have been already fixed
  previously.  Some of those issues have been pointed out by Petr and Simon
  during the patch, while I noticed some of them after looking at the code.
  This also visibly takes of a recently-discovered bug causing assertion
  failures which can be triggered by a two-step slot forwarding which first
  advanced the slot to a WAL page boundary and secondly advanced it to the
  latest position, say 'FF/FFFFFFF' to make sure that the newest LSN is used as
  forward point.  It would have been nice to drop a test for that, but the set
  of operators working on pg_lsn limits it, so this is left for a future
  exercise.  Author: Michael Paquier Reviewed-by: Petr Jelinek, Simon Riggs
  Discussion:
  https://postgr.es/m/CANP8+jLyS=X-CAk59BJnsxKQfjwrmKicHQykyn52Qj-Q=9GLCw@mail.gmail.com
  Discussion:
  https://www.postgresql.org/message-id/2840048a-1184-417a-9da8-3299d207a1d7%40postgrespro.ru
  https://git.postgresql.org/pg/commitdiff/f731cfa94c00164814625d5753d376a4a7c43fff

- Fix grammar in documentation related to checkpoint_flush_after.  Reported-by:
  Christopher Jones
  https://git.postgresql.org/pg/commitdiff/d61bfdda8c2cae671ca4a252993bb8feaa619285

- Fix oversight from 9e149c8 with spin-lock handling.  Calling an external
  function while a pin-lock is held is a bad idea as those are designed to be
  short-lived.  The stress of a first commit into a large git history may
  contribute to that.  Reported-by: Andres Freund Discussion:
  https://postgr.es/m/20180611164952.vmxdpdpirdtkdsz6@alap3.anarazel.de
  https://git.postgresql.org/pg/commitdiff/f8795d2ec8632a7242896e0f8322d13bfe922512

Peter Eisentraut pushed:

- Update config.guess and config.sub.
  https://git.postgresql.org/pg/commitdiff/bfbb13264ae76a952a8312091d600db110b1c0eb

- Make new error code name match SQL standard more closely.  Discussion:
  https://www.postgresql.org/message-id/dff3d555-bea4-ac24-29b2-29521b9d08e8%402ndquadrant.com
  https://git.postgresql.org/pg/commitdiff/387543f7bdf0f1ca3dc06e6bb5c9ef7980cf9f44

- Adjust error message.  Makes it look more similar to other ones, and avoids
  the need for pluralization.
  https://git.postgresql.org/pg/commitdiff/e5d11b91e42e20ff80effb946cb461c490d491ba

- doc: Suggest logical replication more prominently for upgrading.  The previous
  wording suggested only Slony, and there are more options available.
  https://git.postgresql.org/pg/commitdiff/8f6c94272c485bb812aebe063fc412326a17b880

- doc: Replace non-ASCII lines in psql example output.  We normally use the
  default line mode in examples.
  https://git.postgresql.org/pg/commitdiff/b5d099f82ae6e7c49c397bd85832f13729626035

- Convert debug message from ereport to elog.
  https://git.postgresql.org/pg/commitdiff/8a07ebb3c172374aa2c83df61c4e05c059511c9a

Tom Lane pushed:

- Fix run-time partition pruning code to handle NULL values properly.  The
  previous coding just ignored pruning constraints that compare a partition key
  to a null-valued expression.  This is silly, since really what we can do there
  is conclude that all partitions are rejected: the pruning operator is known
  strict so the comparison must always fail.  This also fixes the logic to not
  ignore constisnull for a Const comparison value.  That's probably an
  unreachable case, since the planner would normally have simplified away a
  strict operator with a constant-null input.  But this code has no business
  assuming that.  David Rowley, per a gripe from me Discussion:
  https://postgr.es/m/26279.1528670981@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/be3d90026a3c17c7e6cc23d52430c37df403d869

- Improve commentary about run-time partition pruning data structures.  No code
  changes except for a couple of new Asserts.  David Rowley and Tom Lane
  Discussion:
  https://postgr.es/m/CAKJS1f-6GODRNgEtdPxCnAPme2h2hTztB6LmtfdmcYAAOE0kQg@mail.gmail.com
  https://git.postgresql.org/pg/commitdiff/4e23236403336052a000c8bf85720e9d65ba8036

- Improve ExecFindInitialMatchingSubPlans's subplan renumbering logic.  We don't
  need two passes if we scan child partitions before parents, as that way the
  children's present_parts are up to date before they're needed.  I (tgl) think
  there's actually a bug being fixed here, for the case of an intermediate
  partitioned table with no direct leaf children, but haven't attempted to
  construct a test case to prove it.  David Rowley Discussion:
  https://postgr.es/m/CAKJS1f-6GODRNgEtdPxCnAPme2h2hTztB6LmtfdmcYAAOE0kQg@mail.gmail.com
  https://git.postgresql.org/pg/commitdiff/69025c5a07a10c842bfbcb62d4af1221e5ce7e85

- Fix access to just-closed relcache entry.  It might be impossible for this to
  cause a problem in non-debug builds, since there'd be no opportunity for the
  relcache entry to get recycled before the fetch.  It blows up nicely with
  -DRELCACHE_FORCE_RELEASE plus valgrind, though.  Evidently introduced by
  careless refactoring in commit f0e44751d.  Back-patch accordingly.
  Discussion: https://postgr.es/m/27543.1528758304@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/bdc643e5e46f84d55d989980e4ff5f8e2da103c6

- Fix up run-time partition pruning's use of relcache's partition data.  The
  previous coding saved pointers into the partitioned table's relcache entry,
  but then closed the relcache entry, causing those pointers to nominally become
  dangling.  Actual trouble would be seen in the field only if a relcache flush
  occurred mid-query, but that's hardly out of the question.  While we could fix
  this by copying all the data in question at query start, it seems better to
  just hold the relcache entry open for the whole query.  While at it, improve
  the handling of support-function lookups: do that once per query not once per
  pruning test.  There's still something to be desired here, in that we fail to
  exploit the possibility of caching data across queries in the fn_extra fields
  of the relcache's FmgrInfo structs, which could happen if we just used those
  structs in-place rather than copying them.  However, combining that with the
  possibility of per-query lookups of cross-type comparison functions seems to
  require changes in the APIs of a lot of the pruning support functions, so it's
  too invasive to consider as part of this patch.  A win would ensue only for
  complex partition key data types (e.g. arrays), so it may not be worth the
  trouble.  David Rowley and Tom Lane Discussion:
  https://postgr.es/m/17850.1528755844@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/e23bae82cf3d76365d48b1204ca4c631bac7550d

- Fix some ill-chosen names for globally-visible partition support functions.
  "compute_hash_value" is particularly gratuitously generic, but IMO all of
  these ought to have names clearly related to partitioning.
  https://git.postgresql.org/pg/commitdiff/19832753f1bb052c5fe10328939b670507df7a93

- Code review for match_clause_to_partition_key().  Fix inconsistent decisions
  about NOMATCH vs UNSUPPORTED result codes.  If we're going to cater for
  partkeys that have the same expression and different collations, surely we
  should also support partkeys with the same expression and different opclasses.
  Clean up shaky handling of commuted opclauses, eg checking the wrong operator
  to see what its negator is.  This wouldn't cause any actual bugs given a sane
  opclass definition, but it doesn't seem helpful to expend more code to be less
  correct.  Improve handling of null elements in ScalarArrayOp arrays: in the
  "op ALL" case, we can conclude they result in an unsatisfiable clause.  Minor
  cosmetic changes and comment improvements.
  https://git.postgresql.org/pg/commitdiff/91781335ede4db549a28ffb8e84d3b592eef9f2f

- Fix some minor error-checking oversights in ParseFuncOrColumn().  Recent
  additions to ParseFuncOrColumn to make it reject non-procedure functions in 
  CALL were neither adequate nor documented.  Reorganize the code to ensure
  uniform results for all the cases that should be rejected.  Also, use
  ERRCODE_WRONG_OBJECT_TYPE for this case as well as the converse case of a
  procedure in a non-CALL context.  The original coding used
  ERRCODE_UNDEFINED_FUNCTION which seems wrong, and is certainly inconsistent
  with the adjacent wrong-kind-of-routine errors.  This reorganization also
  causes the checks for aggregate decoration with a non-aggregate function to be
  made in the FUNCDETAIL_COERCION case; that they were not is a long-standing
  oversight.  Discussion: https://postgr.es/m/14497.1529089235@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/0dcf68e5a1f1c600bdf29b47cab30a62301a7af1

- Use snprintf not sprintf in pg_waldump's timestamptz_to_str.  This could only
  cause an issue if strftime returned a ridiculously long timezone name, which
  seems unlikely; and it wouldn't qualify as a security problem even then, since
  pg_waldump (nee pg_xlogdump) is a debug tool not part of the server.  But gcc
  8 has started issuing warnings about it, so let's use snprintf and be safe.
  Backpatch to 9.3 where this code was added.  Discussion:
  https://postgr.es/m/21789.1529170195@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/5d923eb29bb643e311680bab329363d8a9a9768a

- Avoid unnecessary use of strncpy in a couple of places in ecpg.  Use of
  strncpy with a length limit based on the source, rather than the destination,
  is non-idiomatic and draws warnings from gcc 8.  Replace with memcpy, which
  does exactly the same thing in these cases, but with less chance for
  confusion.  Backpatch to all supported branches.  Discussion:
  https://postgr.es/m/21789.1529170195@sss.pgh.pa.us
  https://git.postgresql.org/pg/commitdiff/6b74f5eaadc4489e08a23686f99f096ad0e08936

- Use -Wno-format-truncation and -Wno-stringop-truncation, if available.  gcc 8
  has started emitting some warnings that are largely useless for our purposes,
  particularly since they complain about code following the project-standard
  coding convention that path names are assumed to be shorter than MAXPGPATH.
  Even if we make the effort to remove that assumption in some future release,
  the changes wouldn't get back-patched.  Hence, just suppress these warnings,
  on compilers that have these switches.  Backpatch to all supported branches.
  Discussion: https://postgr.es/m/1524563856.26306.9.camel@gunduz.org
  https://git.postgresql.org/pg/commitdiff/e716585235b175de767d3b210f0a963457dfa77f

- Suppress -Wshift-negative-value warnings.  Clean up four places that result in
  compiler warnings when using recent gcc with this warning class enabled (as
  seen on buildfarm members calliphoridae, skink, and others).  In all these
  places, this is purely cosmetic, because the shift distance could not be large
  enough to risk a change of sign, so there's no chance of
  implementation-dependent behavior.  Still, it's easy enough to avoid the
  warning by casting the shifted value to unsigned, so let's do that.  Patch
  HEAD only, this isn't worth a back-patch.
  https://git.postgresql.org/pg/commitdiff/9b53d966847c55fbd2bff63b3e1a1c37fc694071

Andrew Dunstan pushed:

- Move perlcritic files to new perlcheck directory.
  https://git.postgresql.org/pg/commitdiff/85dd744a70d167ca86e83ea38f5ac3e1449bb028

- Add a script to detect perl compile time errors and warnings.  Also add a
  function that centralizes the logic for locating all our perl files and use it
  in pgperlcritic and pgperltidy as well as the new pgperlcheck.
  https://git.postgresql.org/pg/commitdiff/af616ce48347c68af7bdcfe0e62d9ad601cb8d75

- Exclude files in .git from list of perl files.  The .git directory might
  contain perl files, as hooks, for example.  Since we have no control over
  these they should be excluded from things like our perlcritic checks.  Per
  offline report from Mike Blackwell.
  https://git.postgresql.org/pg/commitdiff/e3eb8be77ef82ccc8f87c515f96d01bf7c726ca8

Álvaro Herrera pushed:

- Don't needlessly check the partition contraint twice.  Starting with commit
  f0e44751d717, ExecConstraints was in charge of running the partition
  constraint; commit 19c47e7c8202 modified that so that caller could request to
  skip that checking depending on some conditions, but that commit and
  15ce775faa42 together introduced a small bug there which caused ExecInsert to
  request skipping the constraint check but have this not be honored -- in
  effect doing the check twice.  This could have been fixed in a very small
  patch, but on further analysis of the involved function and its callsites, it
  turns out to be simpler to give the responsibility of checking the partition
  constraint fully to the caller, and return ExecConstraints to its original
  (pre-partitioning) shape where it only checked tuple descriptor-related
  constraints.  Each caller must do partition constraint checking on its own
  schedule, which is more convenient after commit 2f178441044 anyway.
  Reported-by: David Rowley Author: David Rowley, Álvaro Herrera Reviewed-by:
  Amit Langote, Amit Khandekar, Simon Riggs Discussion:
  https://postgr.es/m/CAKJS1f8w8+awsxgea8wt7_UX8qzOQ=Tm1LD+U1fHqBAkXxkW2w@mail.gmail.com
  https://git.postgresql.org/pg/commitdiff/5b0c7e2f757a2cbdd8e0c478de51bcb5606d3a93

- Fail BRIN control functions during recovery explicitly.  They already fail
  anyway, but prior to this patch they raise an ugly error message about a lock
  that cannot be acquired.  This just improves the message.  Author: Masahiko
  Sawada Reported-by: Masahiko Sawada Discussion:
  https://postgr.es/m/CAD21AoBZau4g4_NUf3BKNd=CdYK+xaPdtJCzvOC1TxGdTiJx_Q@mail.gmail.com
  Reviewed-by: Kuntal Ghosh, Alexander Korotkov, Simon Riggs, Michaël Paquier,
  Álvaro Herrera
  https://git.postgresql.org/pg/commitdiff/74da7cda31c07122257c527d9fd068dc28493fc8

- Fix off-by-one bug in XactLogCommitRecord.  Commit 1eb6d6527aae introduced
  zeroed alignment bytes in the GID field of commit/abort WAL records.  Fixup
  commit cf5a1890592b later changed that representation into a regular cstring
  with a single terminating zero byte, but it also introduced an off-by-one
  mistake.  Fix that.  Author: Nikhil Sontakke Reported-by: Nikhil Sontakke
  Discussion:
  https://postgr.es/m/CAMGcDxey6dG1DP34_tJMoWPcp5sPJUAL4K5CayUUXLQSx2GQpA@mail.gmail.com
  https://git.postgresql.org/pg/commitdiff/ff03112bdc70541382b39fa4e36b9a9ad93b4b73

Andres Freund pushed:

- Fix bugs in vacuum of shared rels, by keeping their relcache entries current.
  When vacuum processes a relation it uses the corresponding relcache entry's
  relfrozenxid / relminmxid as a cutoff for when to remove tuples etc.
  Unfortunately for nailed relations (i.e. critical system catalogs) bugs could
  frequently lead to the corresponding relcache entry being stale.  This set of
  bugs could cause actual data corruption as vacuum would potentially not remove
  the correct row versions, potentially reviving them at a later point.  After
  699bf7d05c some corruptions in this vein were prevented, but the additional
  error checks could also trigger spuriously. Examples of such errors are:
  ERROR: found xmin ... from before relfrozenxid ...  and ERROR: found multixact
  ... from before relminmxid ...  To be caused by this bug the errors have to
  occur on system catalog tables.  The two bugs are: 1) Invalidations for nailed
  relations were ignored, based on the theory that the relcache entry for such
  tables doesn't change. Which is largely true, except for fields like
  relfrozenxid etc.  This means that changes to relations vacuumed in other
  sessions weren't picked up by already existing sessions.  Luckily autovacuum
  doesn't have particularly longrunning sessions.  2) For shared *and* nailed
  relations, the shared relcache init file was never invalidated while running.
  That means that for such tables (e.g. pg_authid, pg_database) it's not just
  already existing sessions that are affected, but even new connections are as
  well.  That explains why the reports usually were about pg_authid et. al.  To
  fix 1), revalidate the rd_rel portion of a relcache entry when invalid. This
  implies a bit of extra complexity to deal with bootstrapping, but it's not too
  bad.  The fix for 2) is simpler, simply always remove both the shared and
  local init files.  Author: Andres Freund Reviewed-By: Alvaro Herrera
  Discussion:
  https://postgr.es/m/20180525203736.crkbg36muzxrjj5e@alap3.anarazel.de
  https://postgr.es/m/CAMa1XUhKSJd98JW4o9StWPrfS=11bPgG+_GDMxe25TvUY4Sugg@mail.gmail.com
  https://postgr.es/m/CAKMFJucqbuoDRfxPDX39WhA3vJyxweRg_zDVXzncr6+5wOguWA@mail.gmail.com
  https://postgr.es/m/CAGewt-ujGpMLQ09gXcUFMZaZsGJC98VXHEFbF-tpPB0fB13K+A@mail.gmail.com
  Backpatch: 9.3-
  https://git.postgresql.org/pg/commitdiff/a54e1f1587793b5bf926630ec9ce142e4578d7a0

Alexander Korotkov pushed:

- Documentation improvement for pg_trgm.  Documentation of word_similarity() and
  strict_word_similarity() functions contains some vague wordings which could
  confuse users.  This patch makes those wordings more clear.  word_similarity()
  was introduced in PostgreSQL 9.6, and corresponding part of documentation
  needs to be backpatched.  Author: Bruce Momjian, Alexander Korotkov
  Discussion: https://postgr.es/m/20180526165648.GB12510%40momjian.us Backpatch:
  9.6, where word_similarity() was introduced
  https://git.postgresql.org/pg/commitdiff/e146e4d02dbc241b6091596331fb1bdf0fb1c081

- Fix memory leak in PLySequence_ToJsonbValue().  PyObject returned from
  PySequence_GetItem() is not released.  Similar code in
  PLyMapping_ToJsonbValue() is correct, because according to Python
  documentation PyList_GetItem() and PyTuple_GetItem() return a borrowed
  reference while PySequence_GetItem() returns new reference.
  contrib/jsonb_plpython is new in PostgreSQL 11, no backpatch is needed.
  Author: Nikita Glukhov Discussion:
  https://postgr.es/m/6001af16-b242-2527-bc7e-84b8a959163b%40postgrespro.ru
  https://git.postgresql.org/pg/commitdiff/dad8bed04ab98ada84ecd58ace6f59839aa161c4

Simon Riggs pushed:

- Remove cut-off bug from RunningTransactionData.  32ac7a118fc17f5 tried to fix
  a Hot Standby issue reported by Greg Stark, but in doing so caused a different
  bug to appear, noted by Andres Freund.  Revoke the core changes from
  32ac7a118fc17f5, leaving in its place a minor change in code ordering and
  comments to explain for the future.
  https://git.postgresql.org/pg/commitdiff/802bde87ba3c64b28d019e8265c2d8948a027c9c

- Remove spurious code comments in standby related code.
  GetRunningTransactionData() suggested that subxids were not worth optimizing
  away if overflowed, yet they have already been removed for that case.  Changes
  to LogAccessExclusiveLock() API forgot to remove the prior comment when it was
  copied to LockAcquire().
  https://git.postgresql.org/pg/commitdiff/dc878ffedf2aa461b11b617094101e3c4cf48daa

- Remove AELs from subxids correctly on standby.  Issues relate only to
  subtransactions that hold AccessExclusiveLocks when replayed on standby.
  Prior to PG10, aborting subtransactions that held an AccessExclusiveLock
  failed to release the lock until top level commit or abort. 49bff5300d527
  fixed that.  However, 49bff5300d527 also introduced a similar bug where
  subtransaction commit would fail to release an AccessExclusiveLock, leaving
  the lock to be removed sometimes early and sometimes late. This commit fixes
  that bug also. Backpatch to PG10 needed.  Tested by observation. Note need for
  multi-node isolationtester to improve test coverage for this and other HS
  cases.  Reported-by: Simon Riggs Author: Simon Riggs
  https://git.postgresql.org/pg/commitdiff/15378c1a15390a2b4c315f19f1644af46c7e3a15

Tatsuo Ishii pushed:

- Fix memory leak.  Memory is allocated twice for "file" and "files" variables
  in BufFileOpenShared().  Author: Antonin Houska Discussion:
  https://postgr.es/m/11329.1529045692%40localhost
  https://git.postgresql.org/pg/commitdiff/969274d813018b08389956e493f691671f0d84f1

- Fix memory leak in BufFileCreateShared().  Also this commit unifies some
  duplicated code in makeBufFile() and BufFileOpenShared() into new function
  makeBufFileCommon().  Author: Antonin Houska Reviewed-By: Thomas Munro, Tatsuo
  Ishii Discussion: https://postgr.es/m/16139.1529049566%40localhost
  https://git.postgresql.org/pg/commitdiff/1cfdb1cb0e3f0acd0fac11537410c48dfd6d9075

Peter Geoghegan pushed:

- Remove INCLUDE attributes section from docs.  Discussing covering indexes in a
  chapter that is mostly about the behavior of B-Tree operator classes is
  unnecessary.  The CREATE INDEX documentation's handling of covering indexes
  seems sufficient.  Discussion:
  https://postgr.es/m/CAH2-WzmpU=L_6VjhhOAMfoyHLr-pZd1kDc+jpa3c3a8EOmtcXA@mail.gmail.com
  https://git.postgresql.org/pg/commitdiff/514d4a1338d5409431d644eaf453193ac362ef16

== Pending Patches ==

Masahiko Sawada sent in another revision of a patch to support atomic commit on FDWs.

Ashutosh Bapat sent in another revision of a patch to refactor the
TupleTableSlot abstraction.

David Rowley and Ashutosh Bapat traded patches to fix a performance regression
for partitioned tables.

Robbie Harwood sent in another revision of a patch to implement GSSAPI
encryption.

Daniel Gustafsson sent in a patch to order windows on partition/ordering prefix
to reuse Sort nodes.

Michaël Paquier sent in a patch to prevent hard failures of standbys caused by
recycled WAL segments.

Raphael Medaer sent in a patch to make it possible for inherited tables to
contain foreign keys which point to primary keys in non-inherited tables.

Haribabu Kommi sent in a patch to document the fact that logical replication can
be used cross-platform.

Kato Sho sent in a patch to add ECPGfreeSQLDA functionality to ECPG.

Nathan Bossart sent in a patch to add SKIP LOCKED to VACUUM and ANALYZE.

Haribabu Kommi sent in another revision of a patch to implement pluggable
storage.

Michaël Paquier sent in another revision of a patch to fix some error handling
for read() and errno.

Michaël Paquier sent in a patch to add pq_senduint* functions.

Daniel Gustafsson sent in two more revisions of a patch to refactor the backend
signalling code and use same to support sending an optional message in backend
cancel/terminate.

Teodor Sigaev sent in another revision of a patch to optimize GROUP BY.

Konstantin Knizhnik sent in a patch to implement pg_wal_prefetch.

Michaël Paquier sent in two more revisions of a patch to track new configure
flags introduced for 11 in pg_config.h.win32.

Artur Zakirov sent in another revision of a patch to implement shared ISpell
dictionaries.

Peter Geoghegan sent in a patch to make all nbtree entries unique by having heap
TIDs participate in comparisons.

Surafel Temesgen sent in another revision of a patch to add an "on conflict do
nothing" option to pg_dump.

Álvaro Herrera sent in a patch to remove unneeded calls to strlen().

Amit Langote sent in a patch to ensure that temp tables cannot be partitions of
a permanent table.

Daniel Gustafsson sent in another revision of a patch to optimize bitmapset
and use same to test membership in FDWs.

Amit Kapila sent in a patch to make some cosmetic improvements to the patch
which enabled faster column addition.

Heikki Linnakangas sent in a patch to split query_planner() into two parts: one
function to do all the pre-processing of the jointree, building equivalence
classes etc., and a second function to generate the Paths.

Arseny Sher sent in a patch to fix another patch intended to fix a bug in
logical replication.

Amit Khandekar sent in a patch to apply launcher subtransactions.

Tom Lane sent in a patch to use the operator_precedence_warning infrastructure
to detect whether there were extra parens.

John Naylor sent in another revision of a patch to ensure that pg_policy, et al,
get TOAST tables where needed.

Amit Langote sent in a patch to document the fact that BEFORE ROW triggers are
not supported on partitioned tables.

Amit Kapila sent in two revisions of a patch to fix pa_path generation.

Tom Lane sent in a patch to ensure that function names and column names can
coexist more peacefully.


В списке pgsql-announce по дате отправления:

Предыдущее
От: Daniele Varrazzo
Дата:
Сообщение: Psycopg 2.7.5 released
Следующее
От: Magnus Hagander
Дата:
Сообщение: PostgreSQL Conference Europe 2018 Open for Registration