Replication Server (RPLS) to target Replication Agent (RPLA) communications can be resumed by restarting the respective RPLS and or RPLA processes with the DSRUTIL utility, without necessarily having to restart the associated replication enabled source and target databases. This Article discusses 3 typical use-cases:
A. Replication enabled source database is up and running, but the Replication Server, Replication Agent and target database are not running.1. Restart the target database and Replication Agent
$ proserve <targetdb> <dbparams> -DBService replagent -S <agent port>
The agent port is the port configured under the [control-agent.<agent>] section of the the Replication Server’s repl.properties file.
If a the Agent Port needs to be changed, first modify the <source>.repl.properties file accordingly
Example: <source>.repl.properties
[control-agent.agent1]
name=agent1
database=target
host=localhost
port=4501
connect-timeout=600
$ proserve target -pf target.pf -DBService replagent -S 4501
RPLA 5: (10501) The Fathom Replication Agent has been successfully started as PID 7492.
BROKER 0: (-----) The OpenEdge Replication Agent is starting...
RPLA 5: (10394) The Fathom Replication Agent is listening on port 4387
If a non-configured Agent Port is used and the target.repl.recovery file has not been deleted, the Replication Target database will start, but the Replication Agent process will terminate.
If a non-configured Agent Port is used and the target.repl.recovery file has been deleted, the Replication Target database and Replication Agent process will start, but when the Replication Server is started it will be unable to connect to the Replication Agent
2. Restart the Replication Server
$ dsrutil <sourcedb> -C restart server
The RPLS will connect to the target database on the port configured under the [control-agent.<agent>] section of the the Replication Server’s repl.properties file and then be directed to the RPLA listening port for replication processing.
B. Replication enabled source database and target databases are up and running, but the Replication Server, Replication Agent have stoppedPrior to OpenEdge 11.61. Re-start the target database and replication agent as outlined above:
$ proserve <targetdb> -S <agent port> <dbparams> -DBService replagent
2. Restart the Replication Server
$ dsrutil <sourcedb> -C restart server
OpenEdge 11.6 and later:1. Restart the Replication Agent
Since OpenEdge 11.6, the
Replication Agent can be restarted like the Replication Server with DSRUTIL without having to restart the target database:
$ dsrutil <targetdb> -C restart agent
2. Restart the Replication Server
$ dsrutil <sourcedb> -C restart server
C. Replication enabled source and target databases is up and running, the Replication Agent is in PRE-TRANSITION and the Replication Server has stopped1. Confirm the Replication Agent Status:
$ dsrutil target -C monitor -> A
2. Restart the Replication Server
$ dsrutil <sourcedb> -C restart server