pgsql: docs: Clarify that signal functions have no feedback.

2020-11-18 Thread Heikki Linnakangas
docs: Clarify that signal functions have no feedback.

Bug #16652 complains that pg_reload_conf() returned true, even though
the configuration file contained errors. That's the way pg_reload_conf()
works, by design, but the documentation wasn't very clear on it. Clarify
that a 'true' return value only means that the signal was sent
successfully. Also add links to the system views that can be used to
check the configuration files for errors.

David G. Johnston, with some rewording by me.

Discussion: 
https://www.postgresql.org/message-id/CAKFQuwax6GxhUQEes0D045UtXG-fBraM39_6UMd5JyR5K1HWCQ%40mail.gmail.com

Branch
--
master

Details
---
https://git.postgresql.org/pg/commitdiff/dfab7f2f94812c6c3a62cfde0ec7f9e447132e64

Modified Files
--
doc/src/sgml/func.sgml | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)



pgsql: Skip allocating hash table in EXPLAIN-only mode.

2020-11-18 Thread Heikki Linnakangas
Skip allocating hash table in EXPLAIN-only mode.

Author: Alexey Bashtanov
Discussion: 
https://www.postgresql.org/message-id/36823f65-050d-ae24-aa4d-a37726998240%40imap.cc

Branch
--
master

Details
---
https://git.postgresql.org/pg/commitdiff/2cccb627f10d5dd4c21806fa251e4fb61eadd28c

Modified Files
--
src/backend/executor/nodeAgg.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)



pgsql: Relax lock level for setting PGPROC->statusFlags

2020-11-18 Thread Alvaro Herrera
Relax lock level for setting PGPROC->statusFlags

We don't actually need a lock to set PGPROC->statusFlags itself; what we
do need is a shared lock on either XidGenLock or ProcArrayLock in order to
ensure MyProc->pgxactoff keeps still while we modify the mirror array in
ProcGlobal->statusFlags.  Some places were using an exclusive lock for
that, which is excessive.  Relax those to use shared lock only.

procarray.c has a couple of places with somewhat brittle assumptions
about PGPROC changes: ProcArrayEndTransaction uses only shared lock, so
it's permissible to change MyProc only.  On the other hand,
ProcArrayEndTransactionInternal also changes other procs, so it must
hold exclusive lock.  Add asserts to ensure those assumptions continue
to hold.

Author: Álvaro Herrera 
Reviewed-by: Michael Paquier 
Discussion: https://postgr.es/m/[email protected]

Branch
--
master

Details
---
https://git.postgresql.org/pg/commitdiff/27838981be9de35d54ffcdc6cc06b5d5ea9e0cee

Modified Files
--
src/backend/commands/vacuum.c | 2 +-
src/backend/replication/logical/logical.c | 2 +-
src/backend/replication/slot.c| 2 +-
src/backend/storage/ipc/procarray.c   | 8 +++-
src/backend/storage/lmgr/deadlock.c   | 2 +-
src/include/storage/proc.h| 5 +
6 files changed, 16 insertions(+), 5 deletions(-)



pgsql: Improve failure detection with array parsing in pg_dump

2020-11-18 Thread Michael Paquier
Improve failure detection with array parsing in pg_dump

Similarly to 3636efa, the checks done in pg_dump when parsing array
values from catalogs have been too lax.  Under memory pressure, it could
be possible, though very unlikely, to finish with dumps that miss some
data like:
- Statistics for indexes
- Run-time configuration of functions
- Configuration of extensions
- Publication list for a subscription

No backpatch is done as this is not going to be a problem in practice.
For example, if an OOM causes an array parsing to fail, a follow-up code
path of pg_dump would most likely complain with an allocation failure
due to the memory pressure.

Author: Michael Paquier
Reviewed-by: Daniel Gustafsson
Discussion: https://postgr.es/m/[email protected]

Branch
--
master

Details
---
https://git.postgresql.org/pg/commitdiff/13b58f8934e6252868231c3493d49b8c2b363e5d

Modified Files
--
src/bin/pg_dump/pg_dump.c | 51 +--
1 file changed, 27 insertions(+), 24 deletions(-)



pgsql: Add BarrierArriveAndDetachExceptLast().

2020-11-18 Thread Thomas Munro
Add BarrierArriveAndDetachExceptLast().

Provide a way for one process to continue the remaining phases of a
(previously) parallel computation alone.  Later patches will use this to
extend Parallel Hash Join.

Author: Melanie Plageman 
Reviewed-by: Thomas Munro 
Discussion: 
https://postgr.es/m/CA%2BhUKG%2BA6ftXPz4oe92%2Bx8Er%2BxpGZqto70-Q_ERwRaSyA%3DafNg%40mail.gmail.com

Branch
--
master

Details
---
https://git.postgresql.org/pg/commitdiff/7888b0999488511e4266f2134053fa3a6505a155

Modified Files
--
src/backend/storage/ipc/barrier.c | 22 ++
src/include/storage/barrier.h |  1 +
2 files changed, 23 insertions(+)