postgresql/src/backend
Thomas Munro 4fd05bb55b Fix deadlock in heap_compute_xid_horizon_for_tuples().
We can't call code that uses syscache while we hold buffer locks
on a catalog relation.  If passed such a relation, just fall back
to the general effective_io_concurrency GUC rather than trying to
look up the containing tablespace's IO concurrency setting.

We might find a better way to control prefetching in follow-up
work, but for now this is enough to avoid the deadlock introduced
by commit 558a9165e0.

Reviewed-by: Andres Freund
Diagnosed-by: Peter Geoghegan
Discussion: https://postgr.es/m/CA%2BhUKGLCwPF0S4Mk7S8qw%2BDK0Bq65LueN9rofAA3HHSYikW-Zw%40mail.gmail.com
Discussion: https://postgr.es/m/962831d8-c18d-180d-75fb-8b842e3a2742%40chrullrich.net
2019-04-02 09:29:49 +13:00
..
access Fix deadlock in heap_compute_xid_horizon_for_tuples(). 2019-04-02 09:29:49 +13:00
bootstrap tableam: relation creation, VACUUM FULL/CLUSTER, SET TABLESPACE. 2019-03-28 20:01:43 -07:00
catalog Improve documentation about our XML functionality. 2019-04-01 16:20:22 -04:00
commands tableam: VACUUM and ANALYZE support. 2019-03-30 19:25:58 -07:00
executor tableam: bitmap table scan. 2019-03-31 18:37:57 -07:00
foreign Update copyright for 2019 2019-01-02 12:44:25 -05:00
jit Renaming for new subscripting mechanism 2019-02-01 12:50:32 -03:00
lib Further code review for new integerset code. 2019-03-25 12:23:48 -04:00
libpq Add DNS SRV support for LDAP server discovery. 2019-03-21 15:28:17 +13:00
main Replace @postgresql.org with @lists.postgresql.org for mailinglists 2019-01-19 19:06:35 +01:00
nodes Generated columns 2019-03-30 08:15:57 +01:00
optimizer tableam: bitmap table scan. 2019-03-31 18:37:57 -07:00
parser Catch syntax error in generated column definition 2019-04-01 10:46:37 +02:00
partitioning Speed up planning when partitions can be pruned at plan time. 2019-03-30 18:58:55 -04:00
po Translation updates 2018-06-25 12:37:18 +02:00
port Add shared_memory_type GUC. 2019-02-03 12:47:26 +01:00
postmaster Add macro to cast away volatile without allowing changes to underlying type 2019-03-25 09:37:03 +01:00
regex Collations with nondeterministic comparison 2019-03-22 12:12:43 +01:00
replication Generated columns 2019-03-30 08:15:57 +01:00
rewrite Generated columns 2019-03-30 08:15:57 +01:00
snowball Update copyright for 2019 2019-01-02 12:44:25 -05:00
statistics Fix thinko in allocation call during MVC list deserialization 2019-04-01 14:16:27 +09:00
storage Add basic infrastructure for 64 bit transaction IDs. 2019-03-28 18:12:20 +13:00
tcop REINDEX CONCURRENTLY 2019-03-29 08:26:33 +01:00
tsearch Move hash_any prototype from access/hash.h to utils/hashutils.h 2019-03-11 13:17:50 -03:00
utils Add volatile qualifier missed in commit 2e616dee9. 2019-04-01 14:37:25 -04:00
.gitignore Add .gitignore entries for AIX-specific intermediate build artifacts. 2015-07-08 20:44:22 -04:00
common.mk Remove PARTIAL_LINKING build mode. 2018-03-30 17:33:04 -07:00
Makefile Get rid of jsonpath_gram.h and jsonpath_scanner.h 2019-03-20 11:13:34 +03:00
nls.mk Translation updates 2018-06-25 12:37:18 +02:00