citus/src/test/regress
Onder Kalaci 3369f3486f Introduce distributed transaction ids
This commit adds distributed transaction id infrastructure in
the scope of distributed deadlock detection.

In general, the distributed transaction id consists of a tuple
in the form of: `(databaseId, initiatorNodeIdentifier, transactionId,
timestamp)`.

Briefly, we add a shared memory block on each node, which holds some
information per backend (i.e., an array `BackendData backends[MaxBackends]`).
Later, on each coordinated transaction, Citus sends
`SELECT assign_distributed_transaction_id()` right after `BEGIN`.
For that backend on the worker, the distributed transaction id is set to
the values assigned via the function call.

The aim of the above is to correlate the transactions on the coordinator
to the transactions on the worker nodes.
2017-07-18 15:01:42 +03:00
..
data Remove uninstantiated qual logic, use attribute equivalences 2017-04-13 11:51:26 +03:00
expected Introduce distributed transaction ids 2017-07-18 15:01:42 +03:00
input Support PostgreSQL 10 (#1379) 2017-06-26 02:35:46 -06:00
output Make create_distributed_table transactional 2017-07-18 12:35:40 +03:00
specs Introduce distributed transaction ids 2017-07-18 15:01:42 +03:00
sql Introduce distributed transaction ids 2017-07-18 15:01:42 +03:00
.gitignore Add missing regression test output files to .gitignore 2017-04-29 03:56:14 +02:00
Makefile Fix some trailing whitespace. 2017-07-04 12:38:52 -07:00
isolation_schedule Introduce distributed transaction ids 2017-07-18 15:01:42 +03:00
multi_binary_schedule Support PostgreSQL 10 (#1379) 2017-06-26 02:35:46 -06:00
multi_mx_schedule Remove 9.5 references from comments in schedule files. 2017-06-26 18:04:32 -07:00
multi_schedule Introduce distributed transaction ids 2017-07-18 15:01:42 +03:00
multi_task_tracker_extra_schedule Remove 9.5 references from comments in schedule files. 2017-06-26 18:04:32 -07:00
pg_regress_multi.pl Remove unused line, @arguments was set but never used 2017-07-12 13:46:27 +02:00
worker_schedule Initial commit of Citus 5.0 2016-02-11 04:05:32 +02:00