When a row is manipulated in a table registered for replication, up to four other tables can be used in processing a transaction for replication. A brief description of the role of each processing table that Ingres Replicator uses to replicate data follows. For a full definition of each table, see the "Data Dictionary Tables" appendix.
The base table is the table manipulated by the user.
The shadow table maintains a history of previous transactions. It contains a row for each row in the base table that has been manipulated. Shadow table rows include the system-generated replicated transaction key for that manipulation, plus the previous replicated transaction key, along with the base table's designated unique key.
Note: Shadow tables are used only in full peer or protected read-only targets.
The archive table contains the "before-images" of rows that have been updated or deleted. Archive table rows include all the replicated columns of the base table, along with the replication key of the manipulation that altered that row. Each row in the archive table corresponds to a row in the shadow table.
Note: Archive tables are used only in full peer targets.
The input queue table contains a transient entry for each row manipulated in a replicated table.
The distribution queue table contains a transient entry for each replicated row that is to be transmitted to another database. It contains the identifier of the target database.
The shadow and archive tables, together with the database procedures are generally referred to as a replicated table's support objects. For more information, see Full Peer Target and Protected Read-Only Target.