STEPS TO APPLY APPS PATCH USING ADPATCH in R12.1.3

June 1st, 2023, posted in Oracle, Solaris
Share

PATCH

Patch is a program (set of instructions) to fix a particular problem or enhance/ add a particular feature in existing program/product/software. 

When ever applying an application patch, always must should follow the Readme.txt or Readme.html file moreover it is always advised to first test the patches on Test Environment, then go for production Environment.

Step 1: Download the patch to your pc and transfer it to Linux server


login to oracle metalink. (www.metalink.oracle.com)
Select the patches option then select the search type.
Search for patch by writing the patch no. & platform on which you want to download the patch.
Click download.
If you have downloaded the patch at desktop then transfer it to Linux server by using Winscp or any other software.

Note:

Here, you can download the patch and put in any directory.
Unzip the patch.
But while running adpatch it will ask like below path where we need to provide the patch location:
Enter the directory where your Oracle Applications patch has been unloaded
The default directory is [/proxy/ebs/uat01/apps/apps_st/appl/ad/12.0.0/bin] : /<patch directory>

Note: To run the adadmin we need to go adadmin directory. If you are not sure ten you can use below command as:

which adadmin
$APPL_TOP/ad/12.0.0/bin/adadmin

Same way if you want to run adpatch then we need to go adpatch directory. If you are not sure then you can use below command as:

which adpatch
$APPL_TOP/ad/12.0.0/bin/adpatch

In below example, we are putting patches in same location at adpatch.

Step 2: Unzip the patch. And set the permission

$pwd
/opt/oracle/VIS/apps/apps_st/appl/ad/12.0.0/bin
$unzip p9501440_R12.XDO.B_R12_GENERIC.zip
$chmod 755 9501440

Step 3: Before applying a patch you must check whether the patch is already applied or not and check for number/list of invalid objects.

For this we query the database :

[root@r12 ~]# su – oracle
$ sqlplus apps/*****
SQL>select * from AD_BUGS where bug_number='<patch number>’;

For Example:

SQL>select * from AD_BUGS where bug_number=’9501440′;
no rows selected

Check for INVALID objects :

SQL>Select count(*) from dba_objects where status=’INVALID’;
SQL> select owner,OBJECT_NAME,OBJECT_TYPE,STATUS from dba_objects where STATUS=’INVALID’;

Step 4: Run the environment variable for application on Application Tier.

$ cd /opt/oracle/VIS/apps/apps_st/appl/
$. ./APPSVIS_r12.env

Step 5: Stop the application with adstpall.sh utility. We are stopping applications because we are not using Hot Patch.

(Please NoteDatabase and Listener should be up)

pwd
/opt/oracle/VIS/inst/apps/VIS_r12/admin/scripts

$./adstpall.sh apps/*****

Step 6: Enable the Maintenance Mode


pwd
/opt/oracle/VIS/apps/apps_st/appl/ad/12.0.0/bin
$./adadmin
* Provide patch log file name as:
Filename [admin.log]patchnumber.log
* Batchsize leav it as default, hit enter.
Batchsize [1000]:

* Enter the password for SYSTEM, and then apps password.
By Default System and Apps password is as shown below:

Enter the password for your ‘SYSTEM’ ORACLE schema: manager
Enter the ORACLE password of Application Object Library [APPS]: apps

1. Generate Applications Files menu
2. Maintain Applications Files menu
3. Compile/Reload Applications Database Entities menu
4. Maintain Applications Database Entities menu
5. Change Maintenance Mode
6. Exit AD Administration

Select an option 5 and press enter key to Change Maintenance Mode.
* Then, Select an option 1 and press enter to Enable Maintenance Mode.
* Press enter to continue.
Select option 3 and press Enter key to return to main menu .
* Press enter to Exit AD Administration

Step 7: Run autopatch (adpatch) from the patch directory by entering the following command:

$pwd
/opt/oracle/VIS/apps/apps_st/appl/ad/12.0.0/bin
ls -l adpatch
-rwxrwxrwx 1 oracle oinstall 9380 Mar 31  2009 adpatch
$./adpatch

After applying successfully patch disable the Maintenance mode as below.


Step 8: Disabling maintenance mode.

The disabling steps are just same as enabling maintenance mode as shown above steps only the thing is you have to select 2 options to Disable maintenance Mode.
After running

./adadmin read carefully options and choose as 5->2->3->6.

5–> Change maintenance mode.
2–> Disable  maintenance mode.
3–> Return to Main Menu.
6–> Exit AD Administration.

Step 9: After disabling the Maintenance Mode, we need to start the services.

$cd $ADMIN_SCRIPTS_HOME
$./adstrtal.sh apps/<apps_pwd>

After checking all the services from backend like:

$ps –ef|grep applmgr |wc –l
Or
$ps –ef|grep FNDLIBR
Or
$ps –ef|grep FND*

Once all the services are UP and Running.

Step 10: Check for Number of Invalid Objects from below command:

SQL>Select count(*) from dba_objects where status=’INVALID’;
SQL> select owner,OBJECT_NAME,OBJECT_TYPE,STATUS from dba_objects where STATUS=’INVALID’;

If there is any new invalid objects then need to recompile.
Then does the front-end sanity check such as checking all the Concurrent Manager’s status and Submit a request.
Hope this is useful and helpful. I really appreciate if anybody can suggest better points.
Please let us know for any concerns @ Contact Us : www.aliimmam.com

Quick Check or High level patching steps in R12.1.3

1.   Careful during download the patch about the version i.e. R12.1.3 or R12.2
2.   Readme.html carefully.
3.   Check for any Pre-req patches.
4.   Check the correct hostname or server.
5.   Check the patch is applied or not.
6.   Check for Pre-Invalid Objects.
7.   Down the services if mentioned in Readme.html
8.   Enable the Maintenance mode.
9.   Apply the patch.
10.  Check the patch is applied or not.
11.   Disable the Maintenance mode.
12.   Start the services
13.   Check for Post-Invalid Objects.
14.   Release the instance

Share

System is in Maintenance State – Boot Archives in Solairs 10

May 21st, 2023, posted in Solaris
Share

Boot archive in Solaris 10 is kernel module and configuration files which is needed for Solaris to start the system. It is a set of files. Its taken care by following two services :

 Svc:/system/boot-archive:default
 Svc:/system/boot-archive-update:default

Normally  Graceful shutdown or init 0 updates archive, but non-graceful or random shutdown leaves the archive files out of sync and after the system comes up it throws a warning that some of the files are different from boot-archive & system will be in maintenance state.

 The recommended action is to reboot to the failsafe archive to correct the above inconsistency. To accomplish this, on a GRUB-based platform, reboot and select the “Solaris failsafe” option from the boot menu.On an OBP-based platform, reboot then type “boot -F failsafe”. Then follow the prompts to update the boot archive. Alternately, to continue booting at your own risk, you may clear the service by running:

svcadm clear system/boot-archive

Nov 19 08:36:23 svc.startd[7]: svc:/system/boot-archive:default: Method “/lib/svc/method/boot-archive” failed with exit status 95.
Nov 19 08:36:23 svc.startd[7]: system/boot-archive:default failed fatally: transitioned to maintenance (see ‘svcs -xv’ for details)
Requesting System Maintenance Mode
(See /lib/svc/share/README for more information.)
Console login service(s) cannot run
Root password for system maintenance (control-d to bypass): Requesting System Maintenance Mode
(See /lib/svc/share/README for more information.)
Console login service(s) cannot run
Root password for system maintenance (control-d to bypass):

Now after logging in to the server with root password, if you check the services status, the boot-archive service will be in maintenance state & since all other services are depending this, those servers will be impacted.

bash-3.00# svcs -xv|more

svc:/system/boot-archive:default (check boot archive content)
 State: maintenance since Wed Nov 19 08:36:23 2014
Reason: Start method exited with $SMF_EXIT_ERR_FATAL.
   See: http://sun.com/msg/SMF-8000-KS
   See: /etc/svc/volatile/system-boot-archive:default.log
Impact: 65 dependent services are not running:
        svc:/system/filesystem/usr:default
        svc:/system/filesystem/minimal:default
        svc:/system/cryptosvc:default
        svc:/network/ipsec/ipsecalgs:default
        svc:/network/ipsec/policy:default
        svc:/milestone/single-user:default
        svc:/system/filesystem/local:default

Steps need to be followed is  you may need to clear boot archives :

#svcadm clear boot-archive

But recommended way is to reboot in fail safe mode and update it. If it gets corrupted , system can’t boot.

Recovery :
Boot solaris in fail safe mode. Solaris image will mount at /a . Then remove the previous record and create new boot archive.

Ok boot -F failsafe
#rm -f /a/platform/i86pc/boot_archive
#bootadm update-archive -R /a
#reboot

Share

Change Values Of Decrypt Password by SQL

April 23rd, 2023, posted in Oracle Queries
Share
SQL> create user test identified by test;
User created.

SQL> grant connect,resource to test;
Grant succeeded.

SQL> select username,password from dba_users where username='TEST';
USERNAME                       PASSWORD
------------------------------ ------------------------------
TEST                           7A0F2B316C212D67

SQL> conn test/test;
Connected.

SQL> conn sys/oracle as sysdba;
Connected.

SQL> alter user test identified by newpwd;
User altered.

SQL> conn test/test;
ERROR:
ORA-01017: invalid username/password; logon denied

Warning: You are no longer connected to ORACLE.

SQL> conn test/newpwd;
Connected.

SQL> show user
USER is "TEST"

SQL> conn sys/oracle as sysdba;
Connected.

SQL> alter user test identified by values  '7A0F2B316C212D67';
User altered.

SQL> conn test/newpwd;
ERROR:
ORA-01017: invalid username/password; logon denied

Warning: You are no longer connected to ORACLE.

SQL> conn test/test;
Connected.

SQL> show user;
USER is "TEST"

SQL>
Share

ORA-01438 Value Larger Than Specified Precision Allowed For This Column AP_AC_TABLE_HANDLER_PKG.INSERT_ROW

March 1st, 2023, posted in Oracle EBS Application
Share

SYMPTOMS

Payment Workbench(APXPAWKB) > When try to save the payment , following error appear:

ERROR
-----------------------
APP-SQLAP-10000 ORA-01438 Value Larger than specified Precision allowed for this column occurred
in AP_AC_TABLE_HANDLER_PKG.INSERT_ROW <AP_CHECKS_PKG.INSERT_ROW>
With Parameter (ROWID= , CHECK_ID=&check_id) while performing the following operation insert into ap_checks

 

ORA-01438 Value Larger,R12: AP: APXPAWKB,ORA-01438 Value Larger Than Specified Precision Allowed,AP_AC_TABLE_HANDLER_PKG.INSERT_ROW

Click to Viewer Larger

 

CAUSE

The cause of the issue is invalid / incorrect Payment Document Number
Payment Document Number should not have more than 15 digits

 

 

SOLUTION

This error is displayed when you enter more than 15 digits in the payment document number.
Please enter the payment document number less than 15 digits and recheck.

 

 

Click to Viewer Larger

Share

Retrieve Forgotten Apps Password in Oracle EBS R12

February 20th, 2023, posted in Oracle Queries
Share
I am going to share steps to retrieve the password in Oracle Apps.
But no guarantee that it will work on all EBS version. It was tested on R12.2.3.
 

Steps:

 
1: log in to the database server with sys user
 sqlplus / as sysdba
 
2: Create Function to decrypt the encrypted password
SQL> create FUNCTION apps.decrypt_pin_func(in_chr_key IN VARCHAR2,in_chr_encrypted_pin IN VARCHAR2)
 RETURN VARCHAR2  AS  LANGUAGE JAVA NAME ‘oracle.apps.fnd.security.WebSessionManagerProc.decrypt(java.lang.String,java.lang.String)
return java.lang.String’;
 /
 
3 : Query for Encrypted password
SQL> select ENCRYPTED_FOUNDATION_PASSWORD from apps.fnd_user where USER_NAME=’GUEST’;

Output

 ENCRYPTED_FOUNDATION_PASSWORD
 ——————————————————————————–  ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A
 
4: Past the Encrypted password from the above query output into the below query and execute
SELECT apps.decrypt_pin_func
(‘GUEST/ORACLE’,’ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A’)
from dual;

Output

 APPS.DECRYPT_PIN_FUNC
(‘GUEST/ORACLE’,’ZG37E123746712BDB2D99E048FE44AE662F2713E2EDB443391BABA0414CADDB7A2E6DD45BBAFA7270A663E5EEBA837F5548A’)
 ——————————————————————————–
 oracle123
 
5: Test apps password is working or not
 SQL> conn apps/oralce123;
Connected.
Share