Linking Veritas Oracle Disk Manager (ODM) with Oracle RAC 12.1.0.1 results in SQL Loader (sqlldr) error.

book

Article ID: 100012215

calendar_today

Updated On:

Description

Error Message

$ORACLE_HOME/bin/sqlldr fails to execute with following error:

SQL*Loader: Release 12.1.0.1.0 - Production on Wed Feb 26 12:16:13 2014

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

sqlldr: symbol lookup error: sqlldr: undefined symbol: odm_registerthread

Resolution

Problem 1: For each execution of sqlldr, set LD_PRELOAD = $ORACLE_HOME/lib/libodmd12.so on the command line.

For example:

# LD_PRELOAD=$ORACLE_HOME/lib/libodmd12.so; $ORACLE_HOME/bin/sqlldr

Problem 2: Before applying any oracle patch, perform the following steps:

1. Disable or Unlink Veritas ODM

a.   Log in as the Oracle user

b.   Stop all the databases:

    # $ORACLE_HOME/bin/srvctl stop database –d

c.        Unlink Veritas ODM:

# cd $ORACLE_HOME/lib

# mv $ORACLE_HOME/lib/libodm12.so $ORACLE_HOME/lib/libodm12.so.veritas

                     # cp –p $ORACLE_HOME/libodmd12.so $ORACLE_HOME/lib/libodm12.so

     2.  Apply the Oracle patch (opatch apply) 

3.   Enable or relink Veritas ODM: 

a.        Log in as the Oracle user

b.       Relink Veritas ODM

# cd $ORACLE_HOME/lib

# mv libodm12.so libodm12.so.oracle-`date +%m_%d_%Y-%H_%M_%S`

# cp /opt/VRTSodm/lib64/libodm.so libodm12.so

c.        Start all the databases

# $ORACLE_HOME/bin/srvctl start database –d


Applies To

OS: Linux and HP

Release: Storage Foundation for Oracle RAC (Any release version)

Oracle: 12.1.0.1   (Single Instance & RAC)

Issue/Introduction

When Veritas ODM library is linked with Oracle RAC 12.1.0.1, the following errors occur: Problem 1: Loading data with SQL Loader (sqlldr) fails due to undefined symbol: odm_registerthread Problem 2: Applying Oracle patch using $ORACLE_HOME/Opatch/opatch apply  fails.