Sie sind auf Seite 1von 12

Concurrent Manager SQL SELECT COUNT(*) FROM fnd_concurrent_requests; prompt ----------------------------------------prompt Step 2 Checking how many ROWS IN FND_CONCURRENT_PROCESSES

TABLE. SELECT COUNT(*) FROM fnd_concurrent_processes; prompt ----------------------------------------------prompt Step 3 Checking sys.dual TABLE which should have one AND ONLY one ROW. SELECT COUNT(*) FROM sys.dual; prompt IF you have more THAN one ROW IN sys.dual, please DELETE it prompt SQL> DELETE ROWNUM FROM SYS.DUAL; Prompt ROWNUM= THE ROW NUMBER TO DELETE prompt prompt prompt --------------------------------------------prompt Step 4 Checking fnd_dual. There must be AT lest one ROW: SELECT COUNT(*) FROM fnd_dual; prompt IF there are NO RECORD selected, prompt UPDATE fnd_dual TABLE TO have AT lest one RECORD prompt ---------------------------------------------prompt Step 5 Checking THE Internal Manager QUEUE NAME "FNDICM" which should be=1 SELECT concurrent_queue_id FROM fnd_concurrent_queues WHERE concurrent_queue_name='FNDICM'; prompt ---------------------------------------------prompt Step 6 Checking FOR Active processes UNDER THE Internal Manager QUEUE prompt IN fnd_concurrent_proceses TABLE: prompt SELECT a.concurrent_queue_name , SUBSTR(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code FROM fnd_concurrent_queues a , fnd_concurrent_processes b WHERE a.concurrent_queue_id=b.concurrent_queue_id AND a.concurrent_queue_name='FNDICM' AND b.process_status_code='A' ORDER BY b.process_status_code; prompt IF ANY ROWS FOUND WITH process_status_code WITH VALUE = 'A' (= Active) prompt THE internal Manager will NOT START up ,so TO avoide this issue

prompt UPDATE these ROWS TO have process_status_code VALUE ='K'(terminated) prompt prompt ----------------------------------------prompt Step 7 Checking FOR Active processes UNDER THE Standard Manager QUEUE prompt IN fnd_concurrent_proceses TABLE: prompt SELECT a.concurrent_queue_name , SUBSTR(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code FROM fnd_concurrent_queues a , fnd_concurrent_processes b WHERE a.concurrent_queue_id=b.concurrent_queue_id AND a.concurrent_queue_name='STANDARD' AND b.process_status_code='A' ORDER BY b.process_status_code; prompt IF ANY ROWS FOUND WITH process_status_code WITH VALUE = 'A' (= Active) prompt THE internal Manager will NOT START up ,so TO avoide this issue prompt UPDATE these ROWS TO have process_status_code VALUE ='K'(terminated) prompt prompt -----------------------------------------prompt Step 8 Checking FOR Active processes UNDER THE Conflict Manager QUEUE prompt IN fnd_concurrent_proceses TABLE: prompt SELECT a.concurrent_queue_name , SUBSTR(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code FROM fnd_concurrent_queues a , fnd_concurrent_processes b WHERE a.concurrent_queue_id=b.concurrent_queue_id AND a.concurrent_queue_name='FNDCRM' AND b.process_status_code='A' ORDER BY b.process_status_code; prompt IF ANY ROWS FOUND WITH process_status_code WITH VALUE = 'A' (= Active) prompt THE internal Manager will NOT START up ,so TO avoide this issue prompt UPDATE these ROWS TO have process_status_code VALUE ='K'(terminated) prompt prompt --------------------------------------------------prompt Step 9 Checking Actual AND Target Processes FOR Internal Manager: SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='FNDICM';

prompt IF THE MAX_PROCESSES=RUNNING_PROCESSES that means THE manager IS UP. prompt prompt -------------------------------------------------------prompt Step 10 Checking Actual AND Target Processes FOR THE Standard Manager: SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='STANDARD'; prompt IF THE MAX_PROCESSES=RUNNING_PROCESSES that means THE manager IS UP. prompt prompt --------------------------------------------------------prompt Step 11 Checking Actual AND Target Processes FOR Conflict Resolution Manager: SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='FNDCRM'; prompt IF THE MAX_PROCESSES=RUNNING_PROCESSES that means THE manager IS UP. prompt prompt --------------------------------------------------------Prompt Step 12 Checking IF THE control_code SET TO 'N': SELECT control_code FROM fnd_concurrent_queues WHERE control_code='N'; prompt prompt IF ANY ROWS selected, please UPDATE THE TABLE fnd_concurrent_queues: prompt UPDATE fnd_concurrent_queues SET control_code = NULL prompt WHERE control_code ='N'; PROMPT UPDATE fnd_concurrent_queues SET target_node = NULL; PROMPT COMMIT; prompt prompt -------------------------------PROMPT Step 13 Checking terminated processes: PROMPT SELECT COUNT (*) FROM fnd_concurrent_requests WHERE status_code='T'; prompt prompt IF you have terminated processes RUN THE FOLLOWING SQL STATEMENT: prompt prompt SQL> UPDATE fnd_concurrent_requests prompt SET status_code = 'E', phase_code = 'C' prompt WHERE status_code = 'T'; prompt

-----------------------------------------prompt Step 14 Checking pending requests: SELECT COUNT(*) FROM fnd_concurrent_requests WHERE status_code='P'; prompt IF ANY ROWS selected please RUN THE FOLLOWING SQL STATEMENT: prompt SQL> UPDATE fnd_concurrent_requests prompt SET status_code = 'E', phase_code = 'C' prompt WHERE status_code = 'P'; prompt -----------------------------------------------------prompt Step 15 Checking Running processes: prompt SELECT COUNT (*) FROM fnd_concurrent_requests WHERE status_code='R'; prompt prompt IF you have Running processes RUN THE FOLLOWING SQL STATEMENT prompt SQL> UPDATE fnd_concurrent_requests prompt SET status_code = 'E', phase_code = 'C' prompt WHERE status_code = 'R'; prompt -----------------------------------------prompt Step 16 Checking THE PMON METHOD, which should be SET TO LOCK: prompt SELECT profile_option_id , profile_option_value FROM FND_PROFILE_OPTION_VALUES WHERE profile_option_id= (SELECT profile_option_id FROM FND_PROFILE_OPTIONS WHERE profile_option_name='CONC_PMON_METHOD'); prompt prompt IF THE PROFILE_OPTION_VALUE was't LOCK please prompt RESET PMON TO LOCK BY running afimpmon.SQL script(THE manager should be down) prompt 1-AT UNIX command prompt: prompt 2-cd $FND_TOP/SQL prompt 3-LOG INTO SQLPLUS AS apps/ prompt SQL> @afimpmon.SQL prompt prompt1:dual prompt prompt2:LOCK (LOCK MUST BE ALL UPPERCASE) prompt FOR Oracle Applications Release 11.5, WHEN you CHECK THE PMON prompt METHOD you may get NO ROWS selected which IS NORMAL, prompt because IN apps 11.5 THE Pmon METHOD IS hard coded TO LOCK AT prompt THE Operating SYSTEM LEVEL. prompt prompt -------------------------------------------------------

prompt Step-17 Checking how many FNDLIBR processes are running: prompt -FOR Unix :FROM unix command prompt $ ps -ef grep -i fndlibr prompt IF you have ANY FNDLIBR processes running,please KILL them BEFORE prompt starting OR shuting down THE internal manager prompt prompt prompt -FOR NT, THROUGH TASK Manager, CHECK THE entries UNDER THE Processes tab FOR FNDLIBR.exe processes. prompt IF there are ANY, Highlight AND click [END Process] button TO KILL processes prompt ---------------------------------------------------------prompt Step-18 Checking how many "FND_%"invalid objects: SELECT SUBSTR(owner,1, 12) owner, SUBSTR(object_type,1,12) TYPE, SUBSTR(status,1,8) status, SUBSTR(object_name, 1, 25) NAME FROM dba_objects WHERE object_name LIKE 'FND_%' AND status='INVALID'; prompt IF you have ANY invalied objects please see note#113947.1 via Metalink prompt -------------------------------------------------------------prompt Step-19-How TO find THE PID IN THE O/S FOR request_id: prompt IF you DO NOT LIKE TO CHECK this enter ANY NUMBER THEN click Enter TO EXIT SELECT r.request_id, p.os_process_id FROM FND_CONCURRENT_REQUESTS r,FND_CONCURRENT_PROCESSES p WHERE r.controlling_manager = p.concurrent_process_id AND request_id=&request_id; prompt prompt Please upload THE "ccm.lst" output TO Support, Thanks. prompt

Script For Concurrent Manager

spool ccm.lst prompt Step 1 Checking how many rows in FND_CONCURRENT_REQUEST. select count(*) from fnd_concurrent_requests; prompt ----------------------------------------Output COUNT(*) 21845

prompt Step 2 Checking how many rows in FND_CONCURRENT_PROCESSES table. select count(*) from fnd_concurrent_processes; prompt ----------------------------------------------COUNT(*) 213 prompt Step 3 Checking sys.dual table which should have one and only one row. select count(*) from sys.dual; prompt If you have more than one row in sys.dual, please delete it prompt sql> delete rownum from SYS.DUAL; Prompt rownum= the row number to delete prompt prompt prompt ---------------------------------------------

prompt Step 4 Checking fnd_dual. There must be at lest one row: select count(*) from fnd_dual; prompt If there are no record selected, prompt Update fnd_dual table to have at lest one record

prompt ---------------------------------------------prompt Step 5 Checking the Internal Manager queue name "FNDICM" which should be=1 select concurrent_queue_id from fnd_concurrent_queues where concurrent_queue_name='FNDICM'; prompt ---------------------------------------------prompt Step 6 Checking for Active processes under the Internal Manager queue prompt in fnd_concurrent_proceses table: prompt select a.concurrent_queue_name , substr(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code from fnd_concurrent_queues a , fnd_concurrent_processes b where a.concurrent_queue_id=b.concurrent_queue_id and a.concurrent_queue_name='FNDICM' and b.process_status_code='A' order by b.process_status_code; prompt If any rows found with process_status_code with value = 'A' (= Active) prompt The internal Manager will not start up ,so to avoide this issue prompt update these rows to have process_status_code value ='K'(terminated) prompt prompt Output CONCURRENT_QUEUE_NAME OS Proc Oracle ID PROCESS_STATUS_CODE FNDICM 14234 43 A ----------------------------------------prompt Step 7 Checking for Active processes under the Standard Manager queue prompt in fnd_concurrent_proceses table: prompt select a.concurrent_queue_name , substr(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code from fnd_concurrent_queues a

, fnd_concurrent_processes b where a.concurrent_queue_id=b.concurrent_queue_id and a.concurrent_queue_name='STANDARD' and b.process_status_code='A' order by b.process_status_code; prompt If any rows found with process_status_code with value = 'A' (= Active) prompt The internal Manager will not start up ,so to avoide this issue prompt update these rows to have process_status_code value ='K'(terminated) prompt prompt
CONCURRENT_QUEUE_NAME OS Proc Oracle ID PROCESS_STATUS_CODE 1 STANDARD 839 21 A 2 STANDARD 842 35 A 3 STANDARD 845 38 A 4 STANDARD 848 67 A 5 STANDARD 849 22 A 6 STANDARD 850 65 A 7 STANDARD 853 36 A 8 STANDARD 854 57 A 9 STANDARD 855 41 A 10 STANDARD 862 24 A -----------------------------------------prompt Step 8 Checking for Active processes under the Conflict Manager queue prompt in fnd_concurrent_proceses table: prompt select a.concurrent_queue_name , substr(b.os_process_id,0,10) "OS Proc" , b.oracle_process_id "Oracle ID" , b.process_status_code from fnd_concurrent_queues a , fnd_concurrent_processes b where a.concurrent_queue_id=b.concurrent_queue_id and a.concurrent_queue_name='FNDCRM' and b.process_status_code='A' order by b.process_status_code; prompt If any rows found with process_status_code with value = 'A' (= Active) prompt The internal Manager will not start up ,so to avoide this issue prompt update these rows to have process_status_code value ='K'(terminated) prompt

prompt --------------------------------------------------prompt Step 9 Checking Actual and Target Processes for Internal Manager: select MAX_PROCESSES,RUNNING_PROCESSES from FND_CONCURRENT_QUEUES where CONCURRENT_QUEUE_NAME='FNDICM'; prompt If the MAX_PROCESSES=RUNNING_PROCESSES that means the manager is UP. prompt prompt -------------------------------------------------------prompt Step 10 Checking Actual and Target Processes for the Standard Manager: select MAX_PROCESSES,RUNNING_PROCESSES from FND_CONCURRENT_QUEUES where CONCURRENT_QUEUE_NAME='STANDARD'; prompt If the MAX_PROCESSES=RUNNING_PROCESSES that means the manager is UP. prompt prompt --------------------------------------------------------prompt Step 11 Checking Actual and Target Processes for Conflict Resolution Manager: select MAX_PROCESSES,RUNNING_PROCESSES from FND_CONCURRENT_QUEUES where CONCURRENT_QUEUE_NAME='FNDCRM'; prompt If the MAX_PROCESSES=RUNNING_PROCESSES that means the manager is UP. prompt prompt --------------------------------------------------------Prompt Step 12 Checking if the control_code set to 'N': select control_code from fnd_concurrent_queues where control_code='N'; prompt prompt If any rows selected, please update the table fnd_concurrent_queues: prompt Update fnd_concurrent_queues set control_code = null prompt where control_code ='N';

PROMPT Update fnd_concurrent_queues set target_node = null; PROMPT commit; prompt prompt -------------------------------PROMPT Step 13 Checking terminated processes: PROMPT select count (*) from fnd_concurrent_requests where status_code='T'; prompt prompt If you have terminated processes run the following sql statement: prompt prompt SQL> Update fnd_concurrent_requests prompt set status_code = 'E', phase_code = 'C' prompt where status_code = 'T'; prompt ------------------------------------------

prompt Step 14 Checking pending requests: select count(*) from fnd_concurrent_requests where status_code='P'; prompt If any rows selected please run the following sql statement: prompt SQL> Update fnd_concurrent_requests prompt set status_code = 'E', phase_code = 'C' prompt where status_code = 'P'; prompt -----------------------------------------------------prompt Step 15 Checking Running processes: prompt select count (*) from fnd_concurrent_requests where status_code='R'; prompt prompt If you have Running processes run the following sql statement prompt SQL> Update fnd_concurrent_requests prompt set status_code = 'E', phase_code = 'C' prompt where status_code = 'R'; prompt ------------------------------------------

prompt Step 16 Checking the PMON method, which should be set to LOCK: prompt select profile_option_id , profile_option_value from FND_PROFILE_OPTION_VALUES where profile_option_id= (select profile_option_id from FND_PROFILE_OPTIONS where profile_option_name='CONC_PMON_METHOD'); prompt prompt If the PROFILE_OPTION_VALUE was't LOCK please prompt Reset PMON to LOCK by running afimpmon.sql script(The manager should be down) prompt 1-At UNIX command prompt: prompt 2-cd $FND_TOP/sql prompt 3-Log into SQLPLUS as apps/ prompt SQL> @afimpmon.sql prompt prompt1:dual prompt prompt2:LOCK (LOCK MUST BE ALL UPPERCASE) prompt For Oracle Applications Release 11.5, when you check the PMON prompt Method you may get no rows selected which is normal, prompt because in apps 11.5 the Pmon Method is hard coded to Lock at prompt the Operating System level. prompt prompt ------------------------------------------------------prompt Step-17 Checking how many FNDLIBR processes are running: prompt -For Unix :From unix command prompt $ ps -ef grep -i fndlibr prompt If you have any FNDLIBR processes running,please kill them before prompt starting or shuting down the internal manager prompt prompt prompt -For NT, through Task Manager, check the entries under the Processes tab for FNDLIBR.exe processes. prompt If there are any, Highlight and click [End Process] button to kill processes prompt ----------------------------------------------------------

prompt Step-18 Checking how many "FND_%"invalid objects: select substr(owner,1, 12) owner, substr(object_type,1,12) type, substr(status,1,8) status, substr(object_name, 1, 25) name from dba_objects where object_name like 'FND_%' and status='INVALID'; prompt If you have any invalied objects please see note#113947.1 via Metalink prompt -------------------------------------------------------------prompt Step-19-How to find the PID in the O/S for request_id: prompt If you do not like to check this enter any number then click Enter to Exit select r.request_id, p.os_process_id from FND_CONCURRENT_REQUESTS r,FND_CONCURRENT_PROCESSES p where r.controlling_manager = p.concurrent_process_id and request_id=&request_id; prompt prompt Please upload the "ccm.lst" output to Support, Thanks. prompt spool off

Comments Activity for this knol


SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='STANDARD'; SELECT COUNT (*) FROM fnd_concurrent_requests WHERE status_code='R'; SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='FNDCRM'; SELECT MAX_PROCESSES,RUNNING_PROCESSES FROM FND_CONCURRENT_QUEUES WHERE CONCURRENT_QUEUE_NAME='FNDICM';

Das könnte Ihnen auch gefallen