Symptom
随便submit一个request,发现几乎所有的Concurrent Manager都为No Manager状态,Phase为Inactive。
Solution
一个Concurrent Request的生命周期包含不同的阶段(Phase):Pending, Running, and Completed,并且对于每一个Phase,又可能会有不同的状态。
- Pending Phase - Normal, Standby, Scheduled, Waiting
- Running Phase - Normal, Paused, Resuming, Terminating
- Completed Phase - Normal, Error, Warning, Cancelled, Terminated
- Inactive Phase - Disabled, On Hold, No Manager
对于Phase:Inactive,Status:No Manager的Concurrent Request,可以做以下检查
看下FNDLIBR进程是否启动
ps -ef | grep FNDLIBR
FNDLIBR process indicates that concurrent mnagers are up and requests are running on the system.Sometimes it happens that even after stopping the concurrent managers by adcmctl.sh stop apps/apps some of the requests might continue running. In such cases you can wait for say 5 minutes and then if it dos not stop then you can kill those FNDLIBR processes bykill -9 <processid>
检查Concurrent Manager是否处于运行状态
检查方法System Administrator responsibility,concurrent > manager > administer,如果Processes下面,Target等于Actual,并且大于0,这就意味着manager是启动的。
如果发现FNDLIBR进程没有或者Concurrent Mannager down掉了,可以尝试重启Concurrent Manager
$ADMIN_SCRIPTS_HOME目录下
[oracle@appsnode log]$ adcmctl.sh stop apps/apps
You are running adcmctl.sh version 120.17.12010000.5
Shutting down concurrent managers for visr12 ...
ORACLE Password:
Submitted request 400227 for CONCURRENT FND SHUTDOWN
adcmctl.sh: exiting with status 0
adcmctl.sh: check the logfile /u01/app/oracle/visr12/inst/apps/visr12_appsnode/logs/appl/admin/log/adcmctl.txt for more information ...
-- starting the Concurrent Manager with diag=Y for detailed info
[oracle@appsnode log]$ adcmctl.sh start apps/apps diag=Y
You are running adcmctl.sh version 120.17.12010000.5
Starting concurrent manager for visr12 ...
Starting visr12_0710@visr12 Internal Concurrent Manager
Default printer is noprint
adcmctl.sh: exiting with status 0
adcmctl.sh: check the logfile /u01/app/oracle/visr12/inst/apps/visr12_appsnode/logs/appl/admin/log/adcmctl.txt for more information ...
[oracle@appsnode log]$ adcmctl.sh status apps/apps
You are running adcmctl.sh version 120.17.12010000.5
Internal Concurrent Manager is Active.
adcmctl.sh: exiting with status 0
[oracle@appsnode log]$ ps -ef | grep FNDLIBR
oracle 7650 7644 0 06:39 pts/1 00:00:03 FNDLIBR
oracle 7924 7759 0 06:55 ? 00:00:02 FNDLIBR
oracle 7925 7759 0 06:55 ? 00:00:02 FNDLIBR
oracle 7926 7759 0 06:55 ? 00:00:02 FNDLIBR
oracle 7931 7759 0 06:55 ? 00:00:00 FNDLIBR
这个时候到System Administrator responsibility,concurrent > manager > administer,检查CM运行的情况
---Update 2013-04-27
又遇到一No Manager的情况,这次不管重启Concurrent Manager,还是应用服务器都不行,最后解决的方法是运行Auto Config,然后问题解决。
Reference:http://appsjagan.blogspot.jp/2010/09/concurrent-manager.html
http://oracledbafriends.blogspot.jp/2011/12/concurrent-manager.html
http://handsonoracle.blogspot.jp/2012/07/request-are-in-pending-status-no.html
===EOF===