Showing posts with label r12.2. Show all posts
Showing posts with label r12.2. Show all posts

Monday 7 February 2022

"APP-FND-02704: Unable to alter user APPS_NE to change password" while changing APPS password using FNDCPASS


Changing apps password using FNDCPASS fails with below error

APP-FND-02704: Unable to alter user APPS_NE to change password.
Oracle error 28003:  has been detected in alterpassword2.

Command to change APPS Password.[Ensure to shut down Application services before changing apps password]
FNDCPASS apps/<apps_pwd> 0 Y system/<password> SYSTEM APPLSYS <new_apps_password>
Error Message from Logfile:
Application Object Library: Version : 12.2
Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
Current system time is 10-APR-2020 18:43:36
   FNDCPASS system/***** SYSTEM APPLSYS *****
APP-FND-02704: Unable to alter user APPS_NE to change password.
Oracle error 28003:  has been detected in alterpassword2.
Concurrent request completed
Current system time is 10-APR-2020 18:43:39

Issue is due to Password_verify_function enables in dba_profiles for APPS,APPLSYS,APPS_NE users


Disable the password verify function for APPS,APPLSYS,APPS_NE users in database profiles.
1. Identify the database profile for APPS,APPLSYS,APPS_NE users using below query.


2. Disable password verify function

alter profile <profile_name> limit PASSWORD_VERIFY_FUNCTION null;

3. Run the FNDCPASS command to change password.

FNDCPASS apps/<apps_pwd> 0 Y system/<password> SYSTEM APPLSYS <new_apps_password>

4. After changing apps password, run autoconfig on Middle tier and update EBS datasource for R12.2.x

You can follow the below steps to update apps password in EBS Datasource:

5. Startup Application services

4. Revert back the changes done in step 2

How to Update APPS password in EBS Datasource (EBS 12.2.x)?

 From EBS 12.2.x versions, whenever we change apps password we need to update the new apps password in EBS Datasource.
Otherwise managed servers wont come up.
Steps to update apps password in Weblogic datasource for EBS 12.2x, post AD-TXK 7:
1. Start Only Admin server,Do not start any other services
$. ./EBSapps.env RUN
$ start

2. Update apps password in Datasource from backend:
$perl $FND_TOP/patch/115/bin/
When prompted select the "updateDSPassword" option.
Sample screen output:

perl $FND_TOP/patch/115/bin/
Please select from list of valid options
        updateDSPassword - Update WebLogic Datasource Password
        updateDSJdbcUrl  - Update WebLogic Datasource Connection String
Enter Your Choice : updateDSPassword
Enter the full path of Applications Context File [DEFAULT -]:
Enter weblogic admin server password:
Enter the APPS user password:

Note: We can also update the apps password in EBS Datasource from Weblogic console. 

Saturday 26 December 2020

EBSO 12.2.x : Query to check status of ADOP session

Check Status of adop session using below sql query:

set pagesize 200;
set linesize 160;
col PREPARE_STATUS format a15
col APPLY_STATUS format a15
col CUTOVER_STATUS format a15
col ABORT_STATUS format a15
col STATUS format a15

Decoding Cutover status:

cutover_status='Y' 'COMPLETED'

cutover_status not in ('N','Y','X') and status='F' 'FAILED'
cutover_status='0' 'CUTOVER STARTED'
cutover_status='3' 'DB CUTOVER COMPLETED'
cutover_status='4' 'FS CUTOVER COMPLETED'
cutover_status='5' 'ADMIN STARTUP COMPLETED'
cutover_status='N' 'NOT STARTED'
cutover_status='X' 'NOT APPLICABLE'

EBS 12.2.X Patching: ADOP Cutover failed while running


 During an adop online patching cycle, cutover phase failed while running the script

  [PROCEDURE]  Starting Middle Tier Services
    [UNEXPECTED]Error occurred running "perl /test/app/fs1/EBSapps/appl/ad/12.0.0/patch/115/bin/ -contextfile=/test/app/fs1/inst/apps/EBSTEST_testebsmt111/appl/admin/EBSTEST_testebsmt111.xml -patchcontextfile=/test/app/fs1/2/inst/apps/EBSTEST_testebsmt111/appl/admin/EBSTEST_testebsmt111.xml -promptmsg=hide -console=off -sessionid=14 -timestamp=20201108_194155 -outdir=/test/app/fs_ne/EBSapps/log/adop/14/20201108_194155/cutover/testebsmt111 -action=forcestartup"
    [UNEXPECTED]Cutover phase has failed.


Review of all adop and cutover log files shows that Cutover phase failed after filesystem switch and ADMIN server startup,oacore services could not be started after cutover due to port conflict.


1. Check Status of adop session using below sql query:
set pagesize 200;
set linesize 160;
col PREPARE_STATUS format a15
col APPLY_STATUS format a15
col CUTOVER_STATUS format a15
col ABORT_STATUS format a15
col STATUS format a15

For my issue, cutover status was 5, which means ADMIN startup is completed.

2. Restart the cutover phase with mtrestart=no option

adop phase=cutover mtrestart=no

3. Fix the issues related to services startup on RUN filesystem (which is switched after cutover).

4. Startup the services

5. Perform cleanup phase and complete the adop cycle

adop phase=cleanup 

Thursday 10 December 2020 Error on Applications Tier

Issue: appsTier on EBS 12.2.x environment fails with error

ERROR: The context variable s_apps_jdbc_connect_descriptor is null


Value of parameter "s_apps_jdbc_connect_descriptor" is null in Applications Context file.


1. Take Backup of context file

2. Update the value of parameter "s_apps_jdbc_connect_descriptor" with JDBC connect string to connect to the database.

3. Run Autoconfig on Applications node.

4. Restart appsTier

Autoconfig Error : ORA-01422: exact fetch returns more than requested number of rows

Issue: Autoconfig on EBS 12.2 environment fails while running script

Below is the error message  from logfile
Script Name    :
Script Version : 120.0.12020000.3
(*******FATAL ERROR*******
PROGRAM : (/test/app/fs1/inst/apps/test_mtnode1/admin/install/
TIME    : Wed Nov 25 04:22:34 2020
FUNCTION: TXK::SQLPLUS::_doExecute [ Level 3 ]
SQLPLUS error: buffer=


SQL*Plus: Release - Production on Wed Nov 25 04:22:33 2020


Copyright (c) 1982, 2005, Oracle.  All rights reserved.


SQL> SQL> Connected.
SQL> SELECT ad_zd_adop.get_node_type('mtnode1') FROM DUAL
ERROR at line 1:
ORA-01422: exact fetch returns more than requested number of rows
ORA-06512: at "APPS.AD_ZD_ADOP", line 3010

FND_NODES table has incorrect node information.
Found an extra row in FND_NODES table where node_name is null after clone.


1. Clean up FND_NODES table

Login to database as apps user

sqlplus apps/<password>

2.Run Autoconfig on Database node(s).

cd $ORACLE_HOME/appsutil/bin

[Provide Database Context file  and apps Password]

3. Run Autoconfig on apps tier

Login to Application node 

Source the RUN filesystem environment file.

cd $AD_TOP/bin

[Provide Applictions Context file and apps Password]

Sunday 14 June 2020

Oracle EBS 12.2.X Login fails with "Unable to create anonymous session. ICX_SESSION_CREATION_FAILED"


In a 12.2.6 EBS environment, Login fails with below error

Unable to create anonymous session. ICX_SESSION_CREATION_FAILED &#40;userid=6&#41; exception oracle.apps.fnd.common.PoolException: Exception creating new Poolable object. Encountered a java exception with the message Exception creating new Poolable object. Cause:java.lang.RuntimeException: java.lang.RuntimeException: java.sql.SQLException: java.lang.reflect.InvocationTargetException.


The error indicates that there are not enough resources to create a new JDBC session. oacore_server.log has the below error messages

####<Aug 08, 2017 3:43:05 PM EST> <Info> <Common> <> <oacore_server1> <[ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <005dy^V9G5e9xW6RJMU4TB0000xv001lSB> <1591994585553> <BEA-000627> <Reached maximum capacity of pool "EBSDataSource", making "0" new resource instances instead of "1".>
####<Aug 08, 2017 3:43:07 PM EST> <Info> <Common> <> <oacore_server1> <pool-2-thread-1> <<anonymous>> <> <*******************> <887561> <BEA-000627> <Reached maximum capacity of pool "EBSDataSource", making "0" new resource instances instead of "1".>
####<Aug 08, 2017 3:43:15 PM EST> <Info> <Common> <> <oacore_server1> <[ACTIVE] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <005dy^V9G5e9xW6RJMU4TB0000xv001lSB> <1591994595562> <BEA-000627> <Reached maximum capacity of pool "EBSDataSource", making "0" new resource instances instead of "1".>
####<Aug 08, 2017 3:43:15 PM EST> <Info> <Common> <> <oacore_server1> <pool-2-thread-1> <<anonymous>> <> <*******************> <955123> <BEA-000627> <Reached maximum capacity of pool "EBSDataSource", making "0" new resource instances instead of "1".>

Number of processes capacity for the Datasource "EBSDatasource" is exhausted.


1. Increase the number of sessions in EBSDatasource

Login to weblogic Console, Navigate to Datasource, click on EBSDatasource.

Click on Lock and Edit, Go to Connection Pool Tab, Increase the value in Number of sessions field.

Click on Activate Changes.

This change does not require any restart of services.


Alternate Solution:

2. Bounce oacore_server to release any inactive sessions and free up the resources

cd $ADMIN_SCRIPTS_HOME stop oacore_server start oacore_server

Thursday 4 June 2020

Troubleshooting concurrent requests struck at Post processing Phase

Sometimes , Eventhough the Database sessions related to the concurrent Programs are in INACTIVE State , we could not terminate the Concurrent Request with error "Could not Lock Request" , Issue could be Requests are struck at Post Processing Phase and OutPut Post Processor is locking the Concurrent Requests.

Need to follow the below steps to perform clean shutdown of Oracle Concurrent Manager.

a) Put Pending Concurrent Requests on hold using the below sql queries.

+Create table apps.conc_req_on_hold as select * from fnd_Concurrent_requests where PHASE_CODE='P' and hold_flag='N';
+select count(*) from apps.conc_req_on_hold
+ update fnd_Concurrent_requests set hold_flag='Y' where PHASE_CODE='P' and hold_flag='N' and request_id in (select request_id from apps.conc_req_on_hold);

NOTE: You have to commit if select & update are same number of records. Otherwise rollback and try again till the numbers are same

+ Commit;

You can find more details about putting Pending Concurrent Jobs on Hold here.

b)Bring Down Concurrent Manager using stop

c) Update the status of Struck Concurrent Requests to "Terminated" 

SQL> update fnd_concurrent_requests set status_code='X',phase_code='C' where status_code='R' and phase_code='R';


Use Concurrent Manager Recovery Wizard from OAM to clear the database sessions associated with cancelled Requests.

d) Start Concurrent Manager using

e) Remove Hold on Concurrent Requests

SQL>update fnd_Concurrent_requests set hold_flag='N' where request_id in (select request_id from apps.conc_req_on_hold);

Commit the changes

 SQL>commit; script failed during instantiate OHS Stage

While cloning 12.2.6 environment, script failed during instantiate OHS Stage.

Issue is because opmn components were unable to start up with below error messages.

globalInitNLS: NLS boot file not found or invalid
 -- default linked-in boot block used
XML parser init: error 201.
globalInitNLS: NLS boot file not found or invalid
 -- default linked-in boot block used

Further analysis on the clone logfiles for OHS creation shown that ORA_NLS10 parameter is unset before cloning.


$unset ORA_NLS10

+Restart the failed script

Concurrent Manager Troubleshooting : Multiple Concurrent Requests Struck without Processing

Scenario: Concurrent Requests are in Running Normal state for longer time than normal duration of the Program.


Step 1: Navigate to System Administrator Responsibility : Concurrent Manager --> Administer

Identify the Concurrent Requests which are in Running Status.

Get the Database Session Details of the currently running concurrent requests using the below Query:

SELECT DISTINCT  a.request_id,C.INST_ID, d.sid, d.serial# ,d.osuser,d.process , c.SPID ,d.inst_id
FROM apps.fnd_concurrent_requests a,
apps.fnd_concurrent_processes b,
gv$process c,
gv$session d
WHERE a.controlling_manager = b.concurrent_process_id
AND = b.oracle_process_id
AND b.session_id=d.audsid
AND a.phase_code = 'R' and a.status_coDe='R';

Step 2: Verify if the database sessions are active/Inactive at the database level using the below query.

select inst_id,sid,serial#,program,module,status,last_call_et,sql_id from gv$session where sid=&sid;

-- sid value to be taken from output of Sql Query in Step 1

If Database session is INACTIVE And Running no sql for more than an Hour, we can Terminate the Concurrent Requests.
If the Database session is ACTIVE and has an SQL_ID attached with it, Need to check on tuning the sql being run by the database session.

I will cover more details about SQL Tuning in another post.

How to Resolve FRM-92101 error while launching forms in Oracle EBS 12.2.x versions?

In EBS 12.2.6 Environment, Launching Forms fails with Error FRM-92101 intermittently.

FRM-92101: There was a failure in the Forms Server during startup. This could happen due to invalid configuration. Please look into the web-server log file for details


1.       Quick workaround for this issue is to clear the browser cache, restart the browser and launch the forms session again.
2.       Check all the required lib files are installed or not and try relinking the forms executables to resolve the issue.
3.       This is a bug with Internet Explorer and R12.2.X. Contact Oracle support to provide a fix.

EBS 12.2.6 login Page is taking long time to load

EBS Login Performance Issues:

After providing username and password in the login page of EBS 12.2.6, loading home page is taking very long time to load.

weblogic console url shows that one of the oacore servers, oacore_server2 is in WARNING state due to Max number of Stuck Threads reached.

Error Message from oacore log

<Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '16' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "605" seconds working on the request "Workmanager: default, Version: 0, Scheduled=true, Started=true, Started time: 605929 ms
GET /OA_HTML/OA.jsp?page=/oracle/apps/per/perimage/webui/PerImgViewPG&transactionid=82152123&language_code=US&pCalledFrom=PERWSIMG&OAMC=N&oas=Wnrjc-sK-Ns6nz5o7H7HIg..&pPersonId=16520&payLegislationCode=AE&CallFromForm='Y' HTTP/1.1
Accept: */*
Accept-Language: en-US
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; Trident/7.0; .NET4.0C; .NET4.0E)
Accept-Encoding: gzip, deflate
Cookie: oracle.uix=0^^GMT+4:00^p; treemenu1=0; JSESSIONID=tg0hURm_tL89fEex9hDrVrvC1rLBjpTn3fc2pZ89o7Hpb7jR7gVi!222603901; JsessionIDForms=Lh0hURqNRRpfmiTouQ_0kF2MiYYn5x8j8cW5AhjSBMEyOEfvp1oa!-851768; DPRPROD=l6hjdVQuX3p1xvWrRtPjEW8SAj
ECID-Context: 1.005NsDH9rp8FCC0_zxo2yW0002km000083;kXjE
Connection: Keep-Alive
X-WebLogic-KeepAliveSecs: 30
X-WebLogic-Force-JVMID: 222603901

]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace: Method)


Temporary workaround is to Restart the oacore servers to release the stuck threads


1. Increase the value of paramter "StuckThreadMaxTime" TO 3600 Seconds from the weblogic Console.

Log in to WebLogic console 

Click on the Admin server >> Click on the Configuration tab >> Tuning tab and set the below values 

How to create a Database link in GL to transfer FSG reports?

Some times, to migrate FSG reports from one environment to the other, its easy to create a dblink between the source and target environemnts and transfer the reports.

STep-by-Step Process to create database link using General Ledger Responbility.

1. Ensure that network connectivity is open between the Source and Target environments.

2. Login to database node of source instance and copy the contents of tnsnames.ora

Extract from tnsnames.ora


4. Add the above tns entry in the tnsnames.ora file on the application server node of Target instance (Where db link need to be created)

5. Format the tns entry into a single line as below


6. Navigate to General Ledger Superuser Reponsibility.

Click on SEtup->>System--> Database links

A form will popup --> Click on "New Database Link"

Input the below values

Database Name: TEST1
Description :Database link for FSG reports
Connect String:
Apps Username: APPS
APPS Password: <Password>

7. Verify that db link is created

select * from dba_db_links;

How to modify workflow administrator role in Oracle EBS?

By default, Workflow System administrator role is set to SYSADMIN User in Oracle EBS 11i/R12. This means only SYSADMIN user can have access to view Oracle workflow notifications of all the EBS users.
We can modify this to any other EBS user who has administrator rights or assign to a reponsibility. For Example, If we change Workflow System administrator to Responsinility name "Workflow Administrator Web Applications", All users who are assigned with this responsibility can have access to view workflow details owned by other Oracle EBS users.

Let us identify the scenarios which require Workflow System administrator privilege.
- Workflow notification is errored and not processed to next approver
- There is an urgent requirement to delegate the workflow notification to another approver.
- Check the status of workflow notification
- Retry / Rewind the workflow notification
- Check the pending notifications for any Oracle EBS user
- Check Workflow Status Diagram

Steps to modify Workflow system administrator role in Oracle EBS 11i/R12

Workflow System Administrator can be changed in below ways.

1.update wf_resources set text='&Enter_Admin_Name' where name='WF_ADMIN_ROLE';

update wf_resources set text='FND_RESP1:20420' where name='WF_ADMIN_ROLE';

2. Change the value of Context file parameter s_wf_admin_role and run Autoconfig

$ cat $CONTEXT_FILE|grep wf_admin
         <username oa_var="s_wf_admin_role" customized="yes">SYSADMIN</username>

3. Change it from Workflow Administrator Web Applications responsibility (Login as sysadmin >> Workflow Administrator Web Applications >> Administration

[Note: Ensure that context file parameter "s_wf_admin_role" is updated with modified value to preserve changes during autoconfig Run]

How to Run hrglobal driver in Oracle EBS 12.2.X Version?

Steps to apply hrglobal driver in Oracle EBS 12.2.x version

1. Start an Oracle online EBS Patching cycle.

adop phase=prepare

2.Source the patch filesystem environment file

ADOP utillity is intelligent enough to switch to Patch Filesystem depending on the ADOP phase being run.For any Other manual operations, we need to set the environment to point to Patch Filesystem explicitly.

. ./EBSapps.env PATCH

3. Run DataInstall

java oracle.apps.per.DataInstall apps appspassword thin

Select the Required localisations and save the changes.

Example of Data Install Changes Summary is shown below.

          DataInstall - Actions confirmation

Do you really wish to exit and save your changes?

      [Y]      - Yes, save then exit
      [N]      - No, don't save but exit
      [Return] - To return to the DataInstall Main Menu

Enter your choice (for example Y) : Y

          DataInstall - Actions summary

The following actions will be performed:

Localisation         Product(s)               Leg. Data? Action
-------------------- ------------------------ ---------- -------------
Global               Human Resources          Installed  Install
United Arab Emirates Human Resources          Installed  Install
United Arab Emirates Payroll                  Installed  Install

Localisation   College Data? Action
-------------- ------------- -------------
United Kingdom
United States

Option                         Data?         Action
------------------------------ ------------- -------------

Legislation                            Action
------------------------------         -------------
ALL  All Legislations

4. Apply hrglobal.drv using below syntax.

adop phase=apply patchtop=$PER_TOP/patch/115 patches=driver:hrglobal.drv workers=8

Complete the ADOP patching cycle by running finalize,cutover and cleanup phases

5. adop phase=finalize

6. adop phase=cutover

7. adop phase=cleanup

8. Run fs_clone to synchronize run and patch filesystems

adop phase=fs_clone

How to change default start Page in Oracle EBS

Application start page can changed for a Oracle EBS user in two ways.

1. Change settings in Preferences:

We can set the Application Start Page in Preferences. Click on Preferences and set the start page to preferred responsibility/page. After setting this preference, user will be taken to the above set page on successful login.

To reset the Responsibility Start Page, we can modify using same navigation.

2.  Change Profile option "Application Start Page"
Login as SYSADMIN user . Navigate to system adminstrator's reponsibility > Profile > System

QUery for Profile Option name 'Application Start Page" and User, then change or remove the value at User Level.