This topic explains the concepts used in C Replicator (CREP).
Catchup
An operation where a target database executes transactions that were executed on the source database when replication was not running. Catchup occurs in the following situations:
▪ Initial population of target database: The target database receives the initial data load and then Catchup executes the transactions that took place on the source database while the initial data load was in progress.
▪ After unavailability of target database: If the target database is unavailable due to maintenance or because of failure, and then recovered, Catchup executes the transactions that took place on the source database while the target database was unavailable.
Normal CREP replication starts automatically after Catchup finishes.
Conflict
A situation where a database operation can not be completed in the target database as it was completed in source database. For example, if replication attempts to update a row that was deleted in the target database.
Conflict resolution
A set of rules that are applied when a conflict occurs. For example, a rule can define that an operation that is initiated from a source database always wins. Replication can proceed after the conflict has been resolved appropriately.
Loader
A task that replicates the initial data set to the target database before continuous on-line replication can be started. A loader replicates rows of data whereas normal replication replicates transactions.
Log position
A point in the transaction log that is defined by the order of transaction execution in the database. Log positions are ordered; transactions executed before other transactions have lower log positions. A replication starting point for Catchup is defined in terms of log position.
Logreader
A software component in the architecture that is capable of reading a transaction log from a database instance.
Partition
Collection of rows in tables inside a database. All write operations that touch these rows inside the source database are replicated to the target database by the replicator. The rows that are replicated are defined by means of table names and WHERE-like clause.
Recovery
Process of restarting replication after the failure of the source database, the target database, the replicator, or any link between them.
Replication relationship
The relationship between two servers where one server is the source server in the relationship and the other server is the target server. Any server can be part of multiple relationships where the server has either the source or target role in the relationship.
Replicator
A solidDB component that can read transactions while they occur in the source database and re-execute them in the target database. The replicator is able to filter out the unnecessary transactions (rows that do not belong to the partition) from the transaction log stream.
Source database
A solidDB instance where applications execute write operations that are captured in the transaction log and read by the replicator.
Target database
A solidDB instance where the replicator re-executes transactions it has read from the transaction log of the source database.
Transaction log
A sequential stream of database write operations that are stored in the database instance either in a sequential log file or memory buffers. This stream of operations represents a complete and reproducible history of state changes inside a database. All solidDB instances create a transaction log by default.