Configuration of integrity checking

Structured server logging must be enabled on every server, with at least one log recording events of type integrity. For example:

$ p4 configure set serverlog.file.8=integrity.csv

After you have enabled structured server logging, set the following configurables to the values you want:

These configurables:

  • determine the behavior and level of checksum computations
  • allow you to persistently log information about database integrity events to the integrity log on each edge/replica server

The integrity log can be parsed using the p4 logparse command for relevant events.

Best practice for most sites is a balance between performance and log size:

p4 configure set rpl.checksum.auto=1 (or 2 for additional verification that is unlikely to vary between an upstream server and its replicas.)

p4 configure set rpl.checksum.change=2 (this setting checks the integrity of every changelist, but only writes to the log if there is an error.)

p4 configure set rpl.checksum.table=1 (this setting instructs replicas to verify table integrity on scan or unload operations, but only writes to the log if there is an error.)