Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've set up bidirectional oracle streams replication (11gR1) using identical scripts on both machines (DB1 and DB2). Although changes from DB1 are being applied to DB2, changes from DB2 to DB1 aren't.

I have only one rule for capture processes that checks for apply tag to prevent cyclic propagation, and have no rules for apply processes. LCRs from DB2 are dequeued at DB1 by apply reader process (update LCRs are among dequeued messages for sure, because when I issue 50 inserts at DB2, at DB1 dequeued messages counter increases by 50), but aren't processed by apply coordinator and servers :

Apply           Apply           Apply Apply
Name            Queue           Tag   Status
--------------- --------------- ----- ------------------------------

Apply                                Messages       Last
Name            State                Dequeued        SCN
--------------- ------------------ ---------- ----------
FROM_DB2_APP    DEQUEUE MESSAGES          102    1118751

Apply                             Trans   Trans   Trans   Trans   Trans   Trans
Name            State             Appld  Assign    Rcvd   Ignrd  Rollbk   Error
--------------- --------------- ------- ------- ------- ------- ------- -------
FROM_DB2_APP    IDLE                  0       0       0       0       0       0

Apply           Server  Messages
Name                ID   Applied State
--------------- ------ --------- ------------------------------
FROM_DB2_APP         1         0 IDLE

As far as I understand, in that case LCRs can be silently ignored (without throwing apply error) only if SCN of LCR is lesser that instantiation SCN for a table, but instantiation SCN is 1114348 (< 1118751):

Source       Object       Object       Instantiation
Database     Owner        Name                   SCN
------------ ------------ ------------ -------------
DB2          DUMMYUSR     DUMMYTBL           1114348

Oracle provides means to deal with errors, but how to check why message was not applied if there was no error?

share|improve this question

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.