Triggers and Replication
A user’s invocation of an AccuRev command on a client machine may cause a client-side trigger and/or a server-side trigger to fire. A client-side trigger fires on the user’s client machine — no ambiguity there. But in a replication environment, there are two AccuRev Servers to consider: the one on the replica server machine and the one on the master server machine. Where does a server-side trigger fire?
-
A rmreplica command fires a server_admin_trig trigger on the replica server. The AccuRev user identity (“principal-name”) of the user who invoked the command is passed to the trigger script.
-
A replica sync command fires a server_admin_trig trigger on the master server. The AccuRev user identity of the AccuRev Server process on the replica server is passed to the trigger script — not the identity of the user who invoked the command. The command-name is passed to the trigger script as replica_sync.
-
For all other commands that write to the repository, a server-side trigger fires on the master server. The AccuRev user identity (“principal-name”) of the user who invoked the command is passed to the trigger script.
-
For commands that do not write to the repository, a server-side trigger fires on the replica server.