Tuesday, November 30, 2010

While applying patch on Oracle Application server OIDLDAPD COULD NOT BE STARTED AFTER APPLYING DB PSR 10.1.0.5

Hello Everyone,

We have face some issues after upgrading Oracle Application Server from 10.1.2.0.2 to 10.1.2.3.0 on solaris platform, i was not able to LDAPBIND on the same server.
I found that after upgrading DB, some infrastructure services like OID and OC4J_Security components gets down.

We have found some metalink documents for the same. we use the following workaround to resolve the issue .


Reference :

OIDLDAPD COULD NOT BE STARTED AFTER APPLYING DB PSR 10.1.0.5
ODIHRAGENT: SYMBOL LPMATTERM: REFERENCED SYMBOL NOT FOUND


The following is only applicable with installations where Oracle Internet Directory (OID) is installed. (e.g., Identity Management home, or a full Infrastructure home). This will not be applicable on Mid-Tier installations, or where there is a non-colocated Infrastructure, where the Metadata Repository is in a separate home.

The oidldapd could not be started after applying DB Patch Set 10.1.0.5 to AS 10.1.2.0.2 in Solaris. This may also have a symptom of OC4J_SECURITY not starting, or /oiddas not accessible. The DB 10.1.0.5 Patchset will otherwise seem successful. This issue will only arise while attempting to startup and use Oracle Application Server OID components.This may be prevented before the patchset installation, or fixed after the patchset installation, using the following methods:

Scenario I. Optional:

Before the installation of the 10.1.0.5 patchset, back up the "libldapclnt10.a" file:


> cp -p $ORACLE_HOME/lib32/libldapclnt10.a $ORACLE_HOME/lib32/libldapclnt10.a_10.1.2.0.2

Restore it after applying DB Patch Set 10.1.0.5, and go to Step II-5, below.

> mv $ORACLE_HOME/lib32/libldapclnt10.a_10.1.2.0.2 $ORACLE_HOME/lib32/libldapclnt10.a

Scenario II. If not able to perform Optional Step I, (DB 10.1.0.5 Patchset already installed to AS 10.1.2.0.2 home, and libldapclnt10.a not backed up), then follow the full workaround:


Step 1. Take the following file from AS 10.1.2.0.2 CD #1 ("Disk1"):

stage/Component/oracle.rsf.ldap_rsf/10.1.2.1.0/1/DataFiles/lib.1.1.jar

Step 2. Execute the following command for getting "libldapclnt10.a0":

> jar xvf lib.1.1.jar

Step 3. Back up the "libldapclnt10.a":

> mv $ORACLE_HOME/lib32/libldapclnt10.a $ORACLE_HOME/lib32/libldapclnt10.a_10.1.0.5

Step 4. Copy the "libldapclnt10.a0":

> cp -p libldapclnt10.a0 $ORACLE_HOME/lib32/libldapclnt10.a

Step 5. You will need to edit the $ORACLE_HOME/bin/relink script with the following:

a.) Update $ORACLE_HOME/ldap/lib/ to $ORACLE_HOME/ldap/lib32

b.) Ensure make points to correct location of make executable on the OS

Before:

MAKE="/usr/bin/make" # full path to make

After:

#MAKE="/usr/bin/make" # full path to make
MAKE="/usr/ccs/bin/make" # full path to make

Step 6. Run the following command to relink:

cd $ORACLE_HOME/ldap/lib32

make -f ins_ldap.mk install

Scenario III. Possible: (If using OID ports below 1024, ownership and permissions may need to be edited): After a relink, OID executables (e.g., oidmon, oidldapd,oidrepld) will be set back to oracle ownership and permissions will be changed.This will prevent OID from starting if OID ports in use are below 1024. The oidldapd must be owned by root with oracle group ownership.

Setting the ownership/permissions back to the way it was after the initial install is typically done by re-running root.sh as root. However, the Database Patchset renames the original root.sh to root.sh.old, and it leaves a root.sh in its place that does not correct the OID executables.

To fix this, manually cat or vi the root.sh.old and search for "oid" (lowercase), and then manually apply all the chmod's and chown's changes to the oid executables listed in root.sh.old. The exact items may differ on installation types, so your root.sh.old is the best location to validate.

Permissions for oidldapd, oidmon, and oidrepld should be as follows:

-rwsr-x--- 1 root dba 2570620 May 23 12:34 oidldapd
-rws------ 1 oracle dba 2662384 May 23 12:34 oidmon
-rws------ 1 oracle dba 2704172 May 23 12:34 oidrepld

Commands to obtain proper permissions:

chmod 4750 oidldapd
chmod 4700 oidmon
chmod 4700 oidrepld

Note: This bug and stated workarounds were provided by Oracle Development at the time of the issue. Since the Oracle Internet Directory Support team is continually seeing different situations.


We have solve the issues with this workaraound, hope it will help you..... :)

Enjoy Working with middlewares and Administration.


Regards,
Ajinkya Vichare

4 comments:

  1. dude i dnt have much idea abt middleware...bt u r doing good job...keep doing it..

    ReplyDelete
  2. Dear Ajinkya, Hi. I've oas 10.1.2.0.0 and want to upgrade it to 10.1.3. I wanted to know exactly which all patches to be applied and in what sequence. I'm trying to find but am not getting clear idea. Your help would be very encouraging. T/R Pankaj Muley

    ReplyDelete
    Replies
    1. Hi Pankaj,

      Kindly let me know which components you are using from OAS10.1.2.0.

      Regards,
      Ajinkya Vichare

      Delete