citus/src/backend/distributed
Nils Dijk 65bd540943
Feature: configure object propagation behaviour in transactions (#5724)
DESCRIPTION: Add GUC to control ddl creation behaviour in transactions

Historically we would _not_ propagate objects when we are in a transaction block. Creation of distributed tables would not always work in sequential mode, hence objects created in the same transaction as distributing a table that would use the just created object wouldn't work. The benefit was that the user could still benefit from parallelism.

Now that the creation of distributed tables is supported in sequential mode it would make sense for users to force transactional consistency of ddl commands for distributed tables. A transaction could switch more aggressively to sequential mode when creating new objects in a transaction.

We don't change the default behaviour just yet.

Also, many objects would not even propagate their creation when the transaction was already set to sequential, leaving the probability of a self deadlock. The new policy checks solve this discrepancy between objects as well.
2022-03-01 17:29:31 +03:00
..
commands Feature: configure object propagation behaviour in transactions (#5724) 2022-03-01 17:29:31 +03:00
connection Introduce global PID 2022-02-08 16:49:38 +03:00
deparser Add support for TEXT SEARCH CONFIGURATION objects (#5685) 2022-02-17 13:12:46 +01:00
executor Feature: configure object propagation behaviour in transactions (#5724) 2022-03-01 17:29:31 +03:00
metadata Expand functions while resolving dependencies 2022-03-01 17:08:46 +03:00
operations Handle rebalance / replication when a node is disabled (Fix #5664) (#5729) 2022-02-25 19:54:30 +03:00
planner Only use a single placement for map tasks 2022-02-23 19:40:21 +01:00
progress Avoid two race conditions in the rebalance progress monitor (#5050) 2021-06-21 14:03:42 +00:00
relay Support foreign tables in MX (#5461) 2022-01-06 18:50:34 +03:00
sql Fix some typos in comments 2022-02-24 19:48:52 +03:00
test Handle rebalance / replication when a node is disabled (Fix #5664) (#5729) 2022-02-25 19:54:30 +03:00
transaction Drop support for CitusInitiatedBackend 2022-02-24 12:12:43 +01:00
utils Refactor CreateDistributedTable to take column name 2022-02-21 12:07:17 +03:00
worker Add support for TEXT SEARCH CONFIGURATION objects (#5685) 2022-02-17 13:12:46 +01:00
.gitignore Change SQL migration build process for easier reviews (#2951) 2019-09-13 18:44:27 +02:00
Makefile Fix minor issues with makefile targets (#4717) 2021-04-28 15:46:55 +03:00
citus.control Bump Citus to 11.0devel 2021-10-01 22:21:22 +03:00
safeclib Compile safestringlib using regular configure 2020-03-19 11:52:20 +01:00
shared_library_init.c Feature: configure object propagation behaviour in transactions (#5724) 2022-03-01 17:29:31 +03:00