How it works

Every record in the database has a corresponding entry in the Repligard table, and an associated unique guid. See Table 14-1 and Figure 14-2.

Table 14-1. The Repligard table

guidGlobally unique id
idid of the object in its table
realmtable name
changedUnix timestamp for the last change of the record with id id in table realm
updatedUnix timestamp for the last update of the object by Repligard
actionThe last action performed on the record with id id in table realm
sitegroupSitegroup id

Figure 14-2. GUID Generation

GUID Generation

The basic principle is that, if changed is greater than updated, then either the record hasn't been replicated, or it has been updated after the last replication.

Data integrity is preserved thanks to the repligard.xml file. Please, notice the rlink element in the blobs and parameter (record_extension) sections. Beware that repligard.xml has to be modified following the same model if, for instance, you use any of the article extra fields with one such level of indirection.

repligard.conf is used to select which part of the database you want replicated: