For replicat, the following is an example with the RANGE function. Without the coordinated replication, the definition will be in multiplier replicat groups and is shown as follows:
For extract (faster than using in the replicat) , an example setup is as follows:
RMTTRAIL ./dirdat/aa table src.customer, filter (@range(1,4,CUSTOMER_ID)); RMTTRAIL ./dirdat/bb table src.customer, filter (@range(2,4,CUSTOMER_ID)); RMTTRAIL ./dirdat/cc table src.customer, filter (@range(3,4,CUSTOMER_ID)); RMTTRAIL ./dirdat/dd table src.customer, filter (@range(4,4,CUSTOMER_ID));
map src.customer, target trg.customer, filter (@range(1,4,CUSTOMER_ID)); map src.customer, target trg.customer, filter (@range(2,4,CUSTOMER_ID)); map src.customer, target trg.customer, filter (@range(3,4,CUSTOMER_ID)); map src.customer, target trg.customer, filter (@range(4,4,CUSTOMER_ID));
MAP src.customer, target trg.customer, THREADRANGE(1-4, CUSTOMER_ID));
1. Why I get the "OGG-01298 Column function diagnostic message: could not find column range." error?
Answer: Make sure you include @ with the RANGE, otherwise, you will get this error.
2. How does extract process related to each other when using the RANGE function?
Details: There are 3 extracts defined with range.
Answer:
- If unable to start 1 extract due to typo, will it prevent other 2 from starting? Answer: No.
- If one of the Extract abends during running, will the other two stay running? Answer: Yes
- If it does stay running will it pickup the work that would have been done by the abend Extract? Answer: No
- Customer is running 11.2. Any change to feature in 12.1? Answer: No, there is no change in 12.1 for this on the extract side. But on the replicat side, use the coordinated replicat after 12.1.