Limitations of using Pro2 with CDC

Posted by Valeriy Bashkatov on 20-Mar-2018 08:48

Hi,

In the documentation (Pro2 Replication USER GUIDE)  says that Pro2 handles only Level 0 of CDC policies, this level indicates a change occurred. No record values will be recorded.

But in our case it is necessary to  implement  the full tracking and saving changes to the target database (in terms of the Pro2 is the Audit Database).

In the implementation when using the replication triggers to save the change of the entire record to replqueue, a template tplt_repltrig-raw.p is used for save record into ReplQueue.RawData.

The question is whether it is possible to somehow implement replication with tracking changes with Level 2 of CDC policies? I'm worried that due to the high load we will not be able to track all changes in individual records with Level 0.

Any ideas?

Regards,
Valeriy

Posted by Satya Prasad on 22-Mar-2018 05:06

As Valeriy said, Pro2 can also capture the actual changed value in the replqueue record. To implement this, user need to deploy RAW triggers in place of normal triggers.
 
Currently, Pro2 doesn’t store the record values using the CDC functionality as we support only Level 0 policies.
 
Thanks,
Satya
 

All Replies

Posted by Brian Bowman on 20-Mar-2018 09:16

Pro2 Replication is currently designed to only capture the fact that records have changed.  In CDC terms this is policy level zero.  Replication triggers implemented in Pro2 do the same thing, only capture that a record changes.  Pro2 replication then extracts the record and copies the mapped fields over to an alternate data source.
 
When using Pro2 Replication you can choose to use either CDC or Replication Triggers depending on your environment and architecture. 
 
If you need to capture the actual changes that are made to a record and track those changes (like a poor man’s auditing) then you need to look to implement CDC outside of Pro2 at level two or three.  There are other things to consider when choosing CDC as an auditing solution.
 
Brian
 

Posted by Valeriy Bashkatov on 21-Mar-2018 02:45

Thank you for your reply!

>>Pro2 Replication is currently designed to only capture the fact that records have changed.

Ok. But in the documentation for Pro2 there is such thing as Audit Database. This means, if I understand correctly, it is possible to track each change and maintain an audit trail in the target database. Unfortunately, there is not much written about this in the documentation. As far as I understand,  tmpl_mreplproc_restart_4audit.p and tplt_repltrig-raw.p templates are used for these purposes, which means that it is possible when using replication triggers.

However, my customer wants to use the OpenEdge CDC instead of replicating triggers as a mechanism for capturing changes. Because the documentation says:

[quote]

CDC Replication Process

The CDC replication process is almost two times faster than using ABL triggers and can be managed online. This results in relatively low database downtime. The client application connection remains unchanged and there is no need to connect to the Repl database.

[/quote]

Posted by Satya Prasad on 22-Mar-2018 05:06

As Valeriy said, Pro2 can also capture the actual changed value in the replqueue record. To implement this, user need to deploy RAW triggers in place of normal triggers.
 
Currently, Pro2 doesn’t store the record values using the CDC functionality as we support only Level 0 policies.
 
Thanks,
Satya
 

Posted by Valeriy Bashkatov on 22-Mar-2018 05:26

Thank you for your reply, Satya!

Do you know if there are plans to implement the use of  Pro2 & OE CDC with other levels (minimum Level 2)?

Posted by Valeriy Bashkatov on 23-Mar-2018 04:11

I created an idea, please vote for it, if you think this is useful:

community.progress.com/.../working_with_openedge_cdc_level_2_policies

This thread is closed