Oracle
 sql >> Baza danych >  >> RDS >> Oracle

jak odbudować kolejkę wf_java_deferred

Aby odbudować kolejkę, należy wykonać następujące kroki


(1) Sprawdź, jakie rekordy zostaną zarchiwizowane w tabeli kopii zapasowych wf_queue_temp_jms_table.


select wfjd.corr_id corrid, msg_state state, count(*) COUNT
from applsys.aq$wf_java_deferred wfjd
where msg_state IN('READY', 'WAIT')
group by corr_id, wfjd.msg_state;

(2) Zamknij usługę nasłuchiwania agenta przepływu pracy i wykonaj kopię zapasową rekordów w kolejce WF_JAVA_DEFERRED w tabeli kopii zapasowych apps.wf_queue_temp_jms_table.

Administrator systemu> Oracle Applications Manager> Workflow> Składniki usługi> Usługa nasłuchiwania agenta Workflow

sqlplus apps/ @wfaqback.sql

Na przykład:

sqlplus apps/apps @$FND_TOP/sql/wfaqback.sql WF_JAVA_DEFERRED

(3) Upewnij się, że wszystkie rekordy znajdują się w tabeli wf_queue_temp_jms_table.

select CORR_ID corrid, QUEUE queue, count (*)
from apps.wf_queue_temp_jms_table
group by CORR_ID, QUEUE;

(4) Ustaw aq_tm_processes =0.

alter system set aq_tm_processes=0;

(5) Zwróć uwagę na nazwę obszaru tabel zawierającego indeks CORRID, który będzie musiał zostać odtworzony później.

SELECT index_name, tablespace_name
FROM all_indexes
WHERE index_name = 'WF_JAVA_DEFERRED_N1';

(6) Usuń kolejkę WF_JAVA_DEFERRED i tabelę kolejek.

declare
begin
dbms_aqadm.stop_queue(queue_name => 'APPLSYS.WF_JAVA_DEFERRED', wait =>
FALSE);
end;
/

Jeśli się zawiesi, możemy użyć siły

declare
begin
dbms_aqadm.drop_queue_table(queue_table => 'APPLSYS.WF_JAVA_DEFERRED', force
=> TRUE);
end;
/

(7) Odtwórz kolejkę WF_JAVA_DEFERRED.

sqlplus / @wfbesqc.sql

Na przykład:

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfbesqc.sql APPLSYS APPS

(8) Dodaj subskrybentów.

sqlplus APPSusr/<pass> @wfbesqsubc.sql

Przykładowa składnia:

sqlplus apps/<pass> @$FND_TOP/patch/115/sql/wfbesqsubc.sql APPLSYS APPS

(9) Odtwórz indeks (Proszę zignorować wszelkie błędy ORA-00955 dotyczące obiektu, które już istnieją, ponieważ spowoduje to dodanie indeksu dla innych obiektów.):

sqlplus APPSusr/<pass> @FND_TOP/patch/115/sql/wfbesqidxc.sql APPLSYS APPS tablespace_name

Przykładowa składnia:

sqlplus apps/apps @$FND_TOP/patch/115/sql/wfbesqidxc.sql APPLSYS APPS APPS_TS_QUEUES

(10) Umieść dane dla WF_JAVA_DEFERRED z powrotem w kolejce.

sqlplus apps/<pass> @wfaqrenq.sql

Na przykład:

sqlplus apps/apps @$FND_TOP/sql/wfaqrenq.sql WF_JAVA_DEFERRED

(11) Potwierdź, że wszystkie rekordy są z powrotem w kolejce.

select wfjd.corr_id corrid, msg_state state, count(*) COUNT
from applsys.aq$wf_java_deferred wfjd
where msg_state IN('READY', 'WAIT')
group by corr_id, wfjd.msg_state;

(12) Uruchom usługę nasłuchiwania agenta przepływu pracy i potwierdź, że teraz przetwarza zdarzenia w kolejce.

Administrator systemu> Oracle Applications Manager> Workflow> Składniki usługi> Usługa nasłuchiwania agenta Workflow

select wfjd.corr_id corrid, msg_state state, count(*) COUNT
from applsys.aq$wf_java_deferred wfjd
where msg_state IN('READY', 'WAIT')
group by corr_id, wfjd.msg_state;

Mam nadzieję, że podoba Ci się post. Prześlij opinię, aby ulepszyć


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. problem ze znalezieniem listy plików w katalogu

  2. jak wysłać e-mail przez Pl/sql

  3. Konfiguracja heterogenicznej replikacji baz danych — SQL Server do Oracle

  4. utwórz niestandardową funkcję dla różnicy dat z wyłączeniem weekendów i świąt w Oracle sql

  5. Przykłady ciągów i liczb konkatenacji Oracle