Search code examples
databaseoracle-databasereplicationsap-ase

SAP Replication Server (from ASE to ASE to Oracle)


I have 2 Sybase DB and 1 Oracle DB, I would like to replicate my Sybase DB X to my Sybase DB Y, and from Sybase DB Y to Oracle. The replication linking is like this:-

Sybase DB X --> Sybase DB Y --> Oracle

The replication from Sybase DB X to Sybase DB Y is working fine, but replication failed from Sybase DB Y to Oracle. When I tried to insert/delete/update some records on Sybase DB Y, it has been replicated to Oracle, but...when I tried to insert/delete/update some records on Sybase DB X, these transactions are able to replicate to Sybase DB Y, but it couldn't replicate to Oracle. WHY??

Appreciate if anyone could solve my doubts. Thanks a lot.


Solution

  • By default the repagent (in Sybase DB Y) will not replicate maintenance user transactions (ie, transactions replicated from Sybase DB X to Sybase DB Y).

    To get the repagent (Sybase DB Y) to also replicate maintenance transactions (ie, transactions from Sybase DB X, once applied in Sybase DB Y, are then re-replicated to Oracle), you'll need to configure the Sybase DB Y repagent:

    use <Sybase_DB_Y>
    go
    sp_config_rep_agent <Sybase_DB_Y>,'send maint xacts to replicate',true
    go
    sp_stop_rep_agent <Sybase_DB_Y>
    go
    -- wait for repagent to go down and then ...
    sp_start_rep_agent <Sybase_DB_Y>
    go