We are planning to use Golden Gate for one of our projects. The idea is something like this:
There would be one master db and several slave dbs. Now the update can occur in any of the slave dbs and that would be propagated to the master
db through Golden Gate. The master db would, in turn, propagate the changes to the other slave dbs, through Golden Gate.
I am currently doing a POC to test the scalability and other aspects of using GG in this situation.
What I recently discovered(for myself :) ) is that:
If I want to pump data from two slave systems to the master db, it can not be possible with the same replicator and remote trail on the master system.
What I mean is that I provided the same remote trail location to both the slave systems.
So, slave 1 and slave 2 both where having one data pump of their own which were trying to use the same remote trail, say, c:\app\oracle\ogg\dirdat\rt.
In the master db, there was only one replicator running, which was monitoring this c:\app\oracle\ogg\dirdat\rt trail location.
What I found was that only one data pump from any of the slave dbs could only run. The other gets aborted saying that there was a network problem and that the
remote system did not find the location c:\app\oracle\ogg\dirdat\rt.
Initially I thought that this was a typo or something. But then I found that if I stop one data pump from any of the slaves, the other works.
Now, my concern is if this behavior is normal. Or do I need to make some configuration changes to make the same remote trail file writabe by different data pumps.
It is important because our system needs to be scalable; so if today we have 5 slaves(e.g.), couple of years later that may become 50 ro 500. So creating different
trail file location and a different replicator in that regard can become a matter of concern.
I am eagerly looking forward for some input from my fellow practitioners.