Feedback
 
Did this article resolve your question/issue?

   

Your feedback is appreciated.

Please tell us how we can make this article more useful. Please provide us a way to contact you, should we need clarification on the feedback provided or if you need further assistance.

Characters Remaining: 1025

 


Article

11.7.4 Replication synchronisation failure after failback processing using controlled transition

Information

 
Article Number000096616
EnvironmentProduct: OpenEdge Replication
Version: 11.7.4 and later
OS: All supported platforms
Question/Problem Description
11.7.4 Replication synchronisation failure after failback processing using controlled transition
dsrutil source -C transition
dsrutil target -C transition

Replication fails after successful offline manual failback transition
RPLA 11: (-----) [10387] The source database source cannot be replicated to this target database
RPLS 11: (-----) [19110] This source database cannot be replicated to agent1
Steps to Reproduce1. Shut down and restart both databases. 
2. Verify the synchronization of the databases:
        dsrutil source-db-name -C status -detail
3. Shut down the databases again.
4. Failback target to source with controlled transition
        dsrutil target-db-name -C transition

    Database successfully transitioned from a Target database to a Source database. (18555)
    The transition of this database has completed normally. (13551)     
        
5. Failback source to target with controlled transition
        dsrutil source-db-name -C transition
          
    Database successfully transitioned from a Source database to a Target database. (18555)   
    The transition of this database has completed normally. (13551)
        
6. Start new Source and Target databases.

proserve source-db-name -DBService replserver
proserve target-db-name -DBService replagent

Replication synchronisation fails
Clarifying Information
Offline Transition using instructions from  "OpenEdge Replication: User Guide", chapter "Initiating failback with controlled transition"
With the same scenario and the same replication configuration failback using controlled transition in a test environment works without error in versions prior OpenEdge 11.7.4
Error MessageSource database:
(-----) [19110] This source database cannot be replicated to <target db name>
(10700) The Fathom Replication Agent agent1 is being terminated.
(10505) The Fathom Replication Server is ending.

Target database:
(-----) [10387] The source database <source db name> cannot be replicated to this target database
(10534) An error occurred during connection.  Fathom Replication cannot continue.
(10506) The Fathom Replication Agent agent1 is ending.
(-----) The agent agent1 is stopping processing and has been told to close session, ret 0.
Defect/Enhancement NumberDefect OESS-1927
Cause
Since OpenEdge 11.7.4 Service Pack, the the re-seeding of the target database from a newly transition sourced database where the database was transitioned off-line is enforced.

The fix done to enforce this was done with OCTA-3947, where against production environments databases that are transitioned for failback offline appear to synchronize but then the replication process fails to apply transaction notes. For further information refer to Article: Documentation Bug OESS-1927 has been raised to get the instructions for Initiating failback with controlled transition revised.
Resolution
OpenEdge 11.7.4 enforces failback transition to re-seed the target database, in all versions:

a. The target database can failback to it's (original) source stated with manual transition
b. But the target must be re-seeded from the newly transitioned source database 

Manual transition is exclusively for recovering from a loss of the source database or machine (disaster).
  • It is only executed against a target database to transition the database to source database.
  • It can be run on-line with and without repl sets enabled.
  • If repl sets are enabled, the database that is to become a source can transition together with the remaining target.
  • It can be run off-line and this requires that target(s) reseeded. In other words when the source database is failed over back to it's original replication enabled source state offline, the target database must then be re-created from a backup of the new source database. The target database cannot be manually failed over offline.
$   dsrutil source -C transition
$   probkup [online] source source_new.back -ReplTargetCreation

Fail Over/Fail back must always be an on-line transition (both source and target(s) are on-line) and is executed only against the source.
  • We do not support fail over and fail back when databases are transitioned off-line. Shutting down the source database and target databases does not ensure in all situations that the databases are entirely synchronized.
    For example, AI block changes that are flushed to disk at shut down time may not be replicated to the target databases.
  • The bug in OpenEdge 11.7.3 and previous versions was that the lack of changing the internal replication timestamp when a database was transitioned off-line.
  • In OpenEdge 11.7.4 this timestamp is changed when the database change roles as part of the transition process and enforces the need to reseed targets when a target database is transitioned off-line to a source database.
  • For failback, the on-line state of both databases is required so that databases can ensure they are properly in sync before transitioning. The first phase of fail over transition ensures all AI buffers are flushed to disk on the source database and ensures that a proper synchronization of both databases occurs. For fail over/back, the following syntax should be used against the source database to failback to it's source replication enabled state

    $   dsrutil sourcedb -C transition failover

 
Workaround
Notes
Attachment 
Last Modified Date6/17/2019 7:11 AM