P4jrep

From PDWiki

Jump to: navigation, search

p4jrep replicates journal entries from a source server into one or more target servers. Though it was originally written to replicate from a source server to target servers on the same machine, it can be used to replicate across machines. p4jrep correctly handles journal rotations of the source server. p4jrep tracks the last journal entry replicated from the source server; it can correctly resume replication after p4jrep is restarted (unless the source server's journal was rotated while p4jrep was not running).

p4jrep does not support full bi-directional replication.

Filters can be used with p4jrep to customize the journal entries that are replicated. A filter can simply filter out single-line journal entries for tables that are not necessary in a target server (see egrepfilter.sh for an example of such a filter). Or, a filter can replicate journal entries, some of which might span multiple journal records, for only a few select tables (see awkfilter.sh for an example of such a filter). Filters can be written in C++ for very specific customizations such as those requiring maintaining state throughout the replication. Filters can be piped together for additional functionality, such as using ssh to replicate across machines.

p4jrep binaries available for download:

Other platforms (except Cygwin and Windows) might be available on request.

Recent Changes

p4jrep is built with source from //guest/michael_shields/src/p4jrep/... and //guest/michael_shields/src/common/... .

Recent changes in //guest/michael_shields/src/p4jrep/... are:

Recent changes in //guest/michael_shields/src/common/... are:

Personal tools