About Barrier Transactions
Barrier transactions are managed automatically in a coordinated Replicat configuration. Barrier transactions are transactions that require coordination across threads. Examples include DDL statements, transactions that include updates to primary keys, and certain EVENTACTIONS
actions.
Optionally, you can force other transactions to be treated like a barrier transaction through the use of the
COORDINATED
keyword in a MAP
statement. One use case for this would be force a SQLEXEC
to be executed in a manner similar to a serial execution. This could be beneficial if the results can become ambiguous unless the state of the target is consistent across all transactions.
Note:
Coordinated Replicat doesn't do dependency calculations for non-barrier transactions when a mapped table is partitioned based onTHNREADRANGE
. It relies on specified THREADRANGE
columns to compute a hash value. It partitions the incoming data based on the hash value and sends all the records that match this hash value to same thread.