3 Replies Latest reply: Mar 22, 2012 5:51 AM by Lacko RSS

    ORA-25307: Enqueue rate too high, flow control enabled

    571582
      Hi All,

      I configured two way replication in production environment. Yesturday we did bulk insertions in primary site. After that I noticed the following error in alert log file.

      ORA-25307: Enqueue rate too high, flow control enabled

      I checked the status of capture,apply,propagation processes. All are enabled.
      But the state of the propagation process is showing "PAUSED FOR FLOW CONTROL".


      SELECT queue_schema, queue_name, unbrowsed_msgs, overspilled_msgs, memory_usage, publisher_state FROM V$BUFFERED_PUBLISHERS;

      Queue Owner Queue Name UNBROWSED_MSGS OVERSPILLED_MSGS MEMORY_USAGE
      --------------- --------------- -------------- ---------------- ------------
      PUBLISHER_STATE
      -----------------------------------------------------------
      STRMADMIN DHKASTLE_APPLY_Q 6022501 0 62

      PUBLISHING MESSAGES

      STRMADMIN DHKASTLE_APPLY_Q 4176 4176 62

      IN FLOW CONTROL: TOO MANY UNBROWSED MESSAGES

      STRMADMIN DHKASTLE_CAPTURE_Q 0 0 62

      PUBLISHING MESSAGES

      How to check whether replication is happening or not.

      Please help in this regard.

      Regards,
      Kiran
        • 1. Re: ORA-25307: Enqueue rate too high, flow control enabled
          654795
          From the following query you can identify whether the apply process applying the messages or not.

          Latency_in_Seconds will give the latency between the event creation and apply time.

          SELECT (APPLY_TIME-APPLIED_MESSAGE_CREATE_TIME)*86400 "Latency_in_Seconds",
          (sysdate-APPLY_TIME)*86400 "Latency_in_Seconds",
          TO_CHAR(APPLIED_MESSAGE_CREATE_TIME,'HH24:MI:SS MM/DD/YY')
          "Event_Creation",
          TO_CHAR(APPLY_TIME,'HH24:MI:SS MM/DD/YY') "Apply_Time",
          FROM DBA_APPLY_PROGRESS
          WHERE APPLY_NAME = <Apply_process_name> ;
          • 2. Re: ORA-25307: Enqueue rate too high, flow control enabled
            649789
            Just Stop and Start the apply process again using following script :

            --STOP THE APPLY PROCESS

            BEGIN
            DBMS_APPLY_ADM.stop_apply(apply_name => 'APPLY_STREAM');
            END;
            /


            --START THE APPLY PROCESS


            BEGIN
            DBMS_APPLY_ADM.START_APPLY(apply_name => 'APPLY_STREAM');
            END;
            /


            Then check the status of apply process in dba_apply .
            You can also try any DML and see if everything is working fine .

            Regards
            Nick
            • 3. Re: ORA-25307: Enqueue rate too high, flow control enabled
              Lacko
              Hi All!

              I have faced this error, after I recreate my configuration, as I had missed my owne and it hadn't worked. So I had removed streamsconfiguration on apply side, but not removed the propagation.
              I have disabled capture
              next disabled propagation
              then stopped apply porcess.
              Removed the apply config (exec dbms_streams_adm.remove_streams_configuration(); + exec dbms_streams_adm.remove_queue(queue_name=>'<my applpyqueue>',cascade=>true,drop_unused_queue_table=>true);
              Finally deleted the propagation as well. (I have one propagation for one target and it was my first config on target side.)

              next I was following my config-steps well, and error has gone away.

              Regards, Lacko

              Edited by: Lacko on Mar 22, 2012 11:51 AM