Enable Parallel Concurrent Processing for Oracle EBS R12

Steps we followed to enable PCP on Oracle EBS R12.1.3

In Oracle EBusiness Suite, we don’t need to separately activate PCP. All we need to do is allocate our preference of primary or secondary node to our concurrent managers (Responsibility = System Administrator, Navigate –> Concurrent: Manager: Define)

Step 1. Find Concurrent Manager Queue

col Manager Short_Name format a55
col Manager_Details format a55
col Node format a20
col Primary format a55
col Secondary format a55
select
–fcq.application_id “Application Id”,
fcq.concurrent_queue_name “Manager Short_Name”,
–fcq.user_concurrent_queue_name “Manager_Details”,
–fa.application_short_name,
fcq.target_node “Node”,
fcq.max_processes “Target”,
fcq.node_name “Primary”, fcq.node_name2 “Secondary”
–fcq.cache_size “Cache Size”,
–fcp.concurrent_processor_name “Program Library”,
–sleep_seconds
from apps.fnd_concurrent_queues_vl fcq, apps.fnd_application fa, apps.fnd_concurrent_processors fcp
where fcq.application_id = fa.application_id
and fcq.processor_application_id = fcp.application_id
and fcq.concurrent_processor_id = fcp.concurrent_processor_id and fcq.enabled_flag=’Y’;

— This returned 48 rows

Step 2> Out of 48, 18 managers were in deactivated state. So, we skipped the deactivated ones and decided to re-distribute (48-18 =) 30 concurrent managers between APPHOST1 & APPHOST2. So here’s revised query to find conc. managers that we need to spread across the concurrent tiers.

col Manager Short_Name format a55
col Manager_Details format a55
col Node format a20
select
–fcq.application_id “Application Id”,
fcq.concurrent_queue_name “Manager Short_Name”,
fcq.user_concurrent_queue_name “Manager_Details”,
–fa.application_short_name,
fcq.target_node “Node”,
fcq.max_processes “Target”,
fcq.node_name “Primary”, fcq.node_name2 “Secondary”
–fcq.cache_size “Cache Size”,
–fcp.concurrent_processor_name “Program Library”,
–sleep_seconds
from apps.fnd_concurrent_queues_vl fcq, apps.fnd_application fa, apps.fnd_concurrent_processors fcp
where fcq.application_id = fa.application_id
and fcq.processor_application_id = fcp.application_id
and fcq.concurrent_processor_id = fcp.concurrent_processor_id and fcq.enabled_flag=’Y’
and fcq.target_node is NOT NULL;

— 30 rows selected.

Step 3> Now we decided to move the custom programs (starting with XEXP%) & anything with XDP% to 2nd CM node

Step 4> Steps to update primary & secondary nodes:

a. Stop CM

b. Take backup of fnd_concurrent_queues

SQL> create apps.fnd_concurrent_queues_bkup as select * from apps.fnd_concurrent_queues;

SQL> create table apps.fnd_concurrent_queues_bkup as select * from apps.fnd_concurrent_queues;

SQL> select count(*) from apps.fnd_concurrent_queues; — 52 rows

SQL> select count(*) from apps.fnd_concurrent_queues_bkup; — 52 rows

c. Run following updates:

SQL> update apps.fnd_concurrent_queues set target_node=’APPHOST2′, node_name = ‘APPHOST2’,node_name2 = ‘APPHOST1’ where CONCURRENT_QUEUE_NAME in
(
–‘FNDIM_APPHOST2’,
–‘OAMGCS_APPHOST2’,
–‘FNDSM_APPHOST2’,
–‘XDP_APPL_SVC’,
–‘XDP_CTRL_SVC’,
–‘XDP_Q_EVENT_SVC’,
–‘XDP_Q_FA_SVC’,
–‘XDP_Q_FE_READY_SVC’,
–‘XDP_Q_IN_MSG_SVC’,
–‘XDP_Q_ORDER_SVC’,
–‘XDP_SMIT_SVC’,
–‘XDP_Q_TIMER_SVC’,
–‘XDP_Q_WI_SVC’,
‘XDP_MANAGER’,
‘XEXP_MARPLE’,
‘XEXP_RECEIPT_REG’,
‘XEXP-XEXPXX_ARAP_BALANCING’,
‘XEXP_Process_Lockboxes’);

SQL> update apps.fnd_concurrent_queues set target_node=’APPHOST1′, node_name = ‘APPHOST1’,node_name2 = ‘APPHOST2’ where CONCURRENT_QUEUE_NAME in
(
–‘FNDSM_APPHOST1
–‘FNDIM_APPHOST1
–‘OAMGCS_APPHOST1
–‘WMSTAMGR’,
–‘WFWSSVC’,
‘AMSDMIN’,
–‘FFTM’,
‘FNDCRM’,
‘FNDICM’,
‘FNDSCH’,
‘FNDTMTST’,
‘STANDARD’,
‘PODAMGR’,
‘RCVOLTM’,
‘PASMGR’,
‘WFMGSMS’,
‘INVMGR’,
‘INVTMRPM’,
‘MRPMGR’,
‘CRPINQMGR’,
‘WFMGSMD’,
‘WFALSNRSVC’,
‘WFMLRSVC’,
–‘FTE_TXN_MANAGER’,
‘Debug_Service’,
‘C_AQCT_SVC’,
‘IEU_SH_CS’,
‘IEU_WL_CS’,
‘OKCCONCMGR’,
‘IEXCONMGR’,
‘OAMCOLMGR’,
–‘DownloadProcessorNormalMode’,
–‘DownloadProcessorMigrationMode’,
‘FNDCPOPP’
);

d. commit;
e. start CM

Step 5. Check Concurrent Manager queue post PCP implementation

col Manager Short_Name format a55
col Manager_Details format a55
col Node format a20
col Primary format a55
col Secondary format a55
select
–fcq.application_id “Application Id”,
fcq.concurrent_queue_name “Manager Short_Name”,
–fcq.user_concurrent_queue_name “Manager_Details”,
–fa.application_short_name,
fcq.target_node “Node”,
fcq.max_processes “Target”,
fcq.node_name “Primary”, fcq.node_name2 “Secondary”
–fcq.cache_size “Cache Size”,
–fcp.concurrent_processor_name “Program Library”,
–sleep_seconds
from apps.fnd_concurrent_queues_vl fcq, apps.fnd_application fa, apps.fnd_concurrent_processors fcp
where fcq.application_id = fa.application_id
and fcq.processor_application_id = fcp.application_id
and fcq.concurrent_processor_id = fcp.concurrent_processor_id and fcq.enabled_flag=’Y’;

Published by Indraneil Seal

I originally hail from Kolkata, India, and I've dedicated a significant portion of my professional journey to both India and the United States before relocating to Canada during the pandemic. I’m a member of MongoDB's esteemed Technical Services team. Before joining this exceptional group, I held the role of Senior Apps DBA at the Government of Ontario. Prior to that, I spent many years honing my technical(DBA/Cloud) and soft skills with TCS, KBACE Technologies(which later got acquired by Cognizant Technology Solutions) and Oracle Corporation. Throughout my career, I was deeply immersed in day-to-day operations and spearheaded significant projects, including the modernization of platforms, Oracle application and database upgrades. In my last stint at the Government of Ontario, I was also responsible for overseeing various automation initiatives including out-of-place patching, automated EBS Application patching. Outside of my professional life, I have a strong passion for reading, blogging, spending quality time with my family, and my feline buddies, Smokey & Louis. I also relish solitary walks and jogging as personal interests. As a proponent of open source technologies, I'm looking forward to sharing my knowledge and expertise as well as contribute as much as possible to the success of the IT fraternity thereby perpetually expanding my skillset.

Leave a comment