[Summary] Oracle and "ksh: unlimited: bad number" message

From: Paulo Gomes <paulog_at_dexel.co.za>
Date: Fri, 18 Jul 97 12:45:00 PDT

Thanks Richard and Thomas, for your response. Solution follows problem
description:


Hi everyone,

We are running on an Alpha 2000, Digital unix version 3.2D, and have been
    

running quite happily for approx. 1 year now.
After upgrading Oracle from ver. 7.2.2 to 7.3.2.3, without making any
changes to the operating system or user profiles, our oracle
administrator now gets an error message (ksh: unlimited: bad number)
everytime she changes from one database instance to the other as is
illustrated below. This has us absolutely puzzled.
Any suggestions welcome.

TIA
Paulo
paulo_at_dexel.co.za
====================================
lsv:cobra.jse.co.za:/oracle7/dba/tools> . oraenv
ORACLE_SID = [lsv] ? lsvh
ksh: unlimited: bad number
lsvh:cobra.jse.co.za:/oracle7/dba/tools> ulimit
unlimited
lsvh:cobra.jse.co.za:/oracle7/dba/tools>

lsvh:cobra.jse.co.za:/oracle7/dba/tools> ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 131072
stack(kbytes) 2048
memory(kbytes) 380056
coredump(blocks) unlimited
nofiles(descriptors) 4096
vmemory(kbytes) 1048576
lsvh:cobra.jse.co.za:/oracle7/dba/tools>

=====================================


Yes, this is a known problem, here is the solution (publically
available).
It comes in 2 parts, problem description and solution description.
   

   

Article-ID: <PR:1023496.6>
Subject: "ORAENV [104]: UNLIMITED: BAD NUMBER" ERROR WHEN
EXECUTING
                    ORAENV
Circulation: ** PUBLIC **
   

   

Affected Platforms: - Generic: not platform specific
Affected Products: Oracle7 Server
   

   

Problem Description:
====================
    

You installed or upgraded to RDBMS version 7.3.2.x and when you
execute "oraenv" you get the following error:
    

     oraenv[104]: unlimited: bad number
    

On HP-UX you will see:
    

     unlimited: the specified number is not valid for this command
    

    

Problem Explanation:
====================
    

There is a bug in "oraenv" that comes with RDBMS version 7.3.2.x.
The check for the value "unlimited" was removed from the "oraenv"
script that comes with RDBMS version 7.3.2.x.
    

    

Search Words:
=============
    

Oracle environment, ulimit
    

   

Solutions and References:
   

      

    <PrSol:2071385.6> EDIT THE "ORAENV" SCRIPT OR USE AN OLDER VERSION
OF
"ORAENV"
   

Article-ID: <PrSol:2071385.6>
For-Problem: <Pr:1023496.6>
Subject: EDIT THE "ORAENV" SCRIPT OR USE AN OLDER VERSION OF
"ORAENV"
Circulation: ** PUBLIC **
   

   

Affected-Platforms: - Generic: not platform specific
Affected-Products: Oracle7 Server
   

   

Solution Description:
=====================
    

There are two workarounds. Either modify the "oraenv" shell
script or use an older version of "oraenv".
    

Workaround 1
 ------------
    

Modify the "oraenv" shell script by doing the following:
    

1. Change your location to the "bin" directory
     

     % cd $ORACLE_HOME/bin
    

2. Make a backup copy of "oraenv"
    

     % cp oraenv oraenv.O
      

3. Use an editor to modify the file "oraenv" and modify
   the test area
    

   FROM:
   -----
    

      if [ $? = 0 -a "$ULIMIT" -lt 2113674 ] ; then
        if [ -f $ORACLE_HOME/bin/osh ] ; then
          exec $ORACLE_HOME/bin/osh
        else
          for D in `echo $PATH | tr : " "`
           do
             if [ -f $D/osh ] ; then
                exec $D/osh
             fi
          done
        fi
      fi
      

   TO:
   ---
    

      if [ $? = 0 -a "$ULIMIT" != "unlimited" ] ; then
        if [ $? = 0 -a "$ULIMIT" -lt 2113674 ] ; then
         if [ -f $ORACLE_HOME/bin/osh ] ; then
          exec $ORACLE_HOME/bin/osh
         else
           for D in `echo $PATH | tr : " "`
             do
               if [ -f $D/osh ] ; then
                  exec $D/osh
               fi
           done
         fi
       fi
     fi
    

4. Save and exit the file "oraenv"
    

    

Workaround 2
 ------------
    

Use an older version of "oraenv" by doing the following:
    

1. Change your location to the "bin" directory
    

     % cd $ORACLE_HOME/bin
    

2. Make a backup copy of "oraenv"
    

     % cp oraenv oraenv.O
      

3. Change your location to the older "bin" directory
    

     % cd <older than 7.3.2.x ORACLE_HOME>/bin
       

4. Copy "oraenv to the "bin" directory
    

     % cp oraenv $ORACLE_HOME/bin
    

   NOTE: You will have to copy either the modified or older
          version of "oraenv" to the "local bin directory"
          that you defined when running "root.sh".
    

    

Solution Explanation:
=====================
    

By adding the test for the word "unlimited", you bypass the test
for a numeric value. By using an older copy of "oraenv" you use
a version of the script that already contains the test for the
"unlimited" value.
    

    

   

   

__________________________________________________________________________
___

    

 Richard Wood
   

   
Received on Fri Jul 18 1997 - 12:59:13 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:36 NZDT