Illustration strms005.gif shows the following mechanisms in two Oracle databases:
At the first Oracle database, a capture process capturing changes made to database objects from the redo log and enqueuing these changes into a queue as LCRs.
At the first Oracle database, a user application C producing LCRs or messages and enqueuing them into the queue.
A propagation propagating messages from the source queue at the first database to the destination queue at the second database.
At the second Oracle database, an apply process dequeuing LCRs and messages from the queue and either applying changes directly or passing the messages to an apply handler. The apply handlers include a message handler procedure to process user messages, a DML handler procedure to process certain DML LCRs (row LCRs), and a DDL handler procedure to process DDL LCRs.
At the second Oracle database, user application D dequeuing LCRs or messages from the queue and consuming them.