Unable to allocate Large_pool_size in 11g

Hi ,
I am running database version 11.2.0.2 in Linux , I have used AMM (Automatic memory management) for memory organization.
I am getting a frequent ORA-04031 errors where it is unable to allocate the memory for RMAN backup from large_pool_size. So I tried to set the large_pool_size = 20M but not allowing where shared_pool_size has free memory around 230M, What could be the reason?
August 2013 14:22
SQL> select * from (select name,bytes/(1024*1024) from v$sgastat where pool='shared pool' order by bytes desc ) where rownum < 11; 
NAME                       BYTES/(1024*1024)
KGLH0                             522.005989
free memory                       230.318596
SQLA                              36.0669022
ASH buffers                               16
KGLS                              10.2996902
XDBSC                             9.62641144
kglsim object batch               9.62521362
row cache                         7.23767853
KGLHD                             6.11631775
KKSSP                             5.85671234
SQL> alter system set large_pool_size=20M scope=both;
alter system set large_pool_size=20M scope=both
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-04033: Insufficient memory to grow pool
Thanks,
Robin

Arun,
The details are the below:
MIN_SIZE COMPONENT
461373440 shared pool
   4194304 large pool
   4194304 java pool
   4194304 streams pool
  33554432 DEFAULT buffer cache
         0 KEEP buffer cache
         0 RECYCLE buffer cache
         0 DEFAULT 2K buffer cache
         0 DEFAULT 4K buffer cache
         0 DEFAULT 8K buffer cache
         0 DEFAULT 16K buffer cache
  MIN_SIZE COMPONENT
         0 DEFAULT 32K buffer cache
         0 Shared IO Pool
         0 ASM Buffer Cache
Thanks,
Robin

Similar Messages

  • ORA-29855 - Unable to allocate shared memory

    Hi,
    We are encountering troubles (unable to allocate shared memory) while indexes creation. We tried to increase the share_size_memory (actually 52 mb) but this had no effect on this error. The Oracle error code is ORA-29855.
    The database is version 8.1.7, hosted on a Linux machine (RedHat 7.2) with 512 mb of memory. The code used for the index creation works fine on other machines (code from 9iAS Wireless installation) running with Windows 2000 as operation system.
    Any help or comment will be appreciated.
    Thanks,
    Fabrice Clari.
    The error message is:
    java.sql.SQLException: ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-13200: internal error [ROWID:AAAGDwAAFAAAAvjAAA] in spatial indexing.
    ORA-13206: internal error [] while creating the spatial index
    ORA-13011: value is out of range
    ORA-00600: internal error code, arguments: [kope2ucoll700], [], [], [], [], [], [], []
    ORA-04031: unable to allocate 16396 bytes of shared memory ("large pool","unknown object","koh-kghu sessi","kolcalm coll")
    ORA-06512: at "MDSYS.SDO_INDEX_METHOD", line 8
    ORA-06512: at line 1

    Which portion of shared memory did you increase? The error indicates you need to increase large_pool_size. It seems you may also have other problems since you have several errors, and this only relates to the ORA-04031 error.

  • ORA-04031: unable to allocate

    hi gurus,
    I am getting the following error whenever try to access database from client side or login to SQL*Plus :
    ora 04031, 00000, "unable to allocate %s bytes of shared memory (\"%s\",\"%s\",\"%s")"
    But i can login on server and working properly.
    I am using oracle 9i release 1 on win 2k.
    Can any one help me to come out of this problem.
    Thanks
    Regards,
    Raghv

    Thanks Joel to have some time for this post.
    Hope these details will help you to understand the problem.
    How long is the virtual memory of your OS ?Minimum : 744 MB Maximum : 1488 MB
    How long is the RAM memory of the OS ?RAM : 640 MB
    Do you have several instances in the same OS ?No,only single instance
    Details from init.ora file:
    # Cache and I/O
    db_block_size=4096
    db_cache_size=33554432
    # Cursors and Library Cache
    open_cursors=300
    # Network Registration
    instance_name=orcl
    # Pools
    java_pool_size=33554432
    large_pool_size=1048576
    shared_pool_size=33554432
    # Processes and Sessions
    processes=150
    # Redo Log and Recovery
    fast_start_mttr_target=300
    Desired query output :
    SQL> select * from v$shared_pool_reserved;
    no rows selected
    SQL> select * from v$sgastat where name='free memory';
    POOL NAME BYTES
    shared pool free memory 3301916
    large pool free memory 4294613080
    java pool free memory 28954624
    SQL> select sum(bytes) from v$sgastat where pool = 'shared pool';
    SUM(BYTES)
    46137344
    SQL> select sum(bytes) from v$sgastat where pool = 'java pool';
    SUM(BYTES)
    33554432
    SQL> select sum(bytes) from v$sgastat where pool = 'large pool';
    SUM(BYTES)
    4.295E+09
    Regards,
    Raghv

  • Ora-04031 unable to allocate shared memory

    Hi Guru's
    Could some one help me in finding the sql's/program which causing the ora-04031 unable to allocate 3896 bytes of shared memory.
    any suggestion is highly apprciated
    Kind Regards

    You may want to take look at:
    ORA-04031: unable to allocate 4032 bytes of shared memory
    >
    ORA-04031 unable to allocate n bytes of shared memory ("string","string","string","string")
    Cause: More shared memory is needed than was allocated in the shared pool.
    Action: If the shared pool is out of memory, either use the DBMS_SHARED_POOL package to pin large packages, reduce your use of shared memory, or increase the amount of available shared memory by increasing the value of the initialization parameters SHARED_POOL_RESERVED_SIZE and SHARED_POOL_SIZE. If the large pool is out of memory, increase the initialization parameter LARGE_POOL_SIZE.

  • ORACLE error ORA-04031: unable to allocate 16 bytes of memory

    Error
    UDI-04031: operation generated ORACLE error 4031
    ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","SELECT j
    generated during import operation, using documentation about migration from 10g XE to 11g XE.

    Hello,
    you could try to override the automatic memory management and setup your SGA to be larger by setting SGA_TARGET. If that doesn't help yet, you could even try to configure the memory size for the components in SGA manually, but I guess this won't be necessary.
    After your import is done, I'd recommend to use automatic memory management again.
    See the XE 2 Day DBA for details, especially the section on [url http://download.oracle.com/docs/cd/E17781_01/server.112/e18804/memory.htm#ADMQS174]Managing Memory. It's not a complete guide, but a rough introduction, but it'll probably help you understand the memory concepts in the database.
    Keep in mind that you may only assign 1 GB of memory in total when you setup your memory manually.
    -Udo

  • Urgent help with ORA-01062: unable to allocate memory for define buffer

    Hello, Folks!
    I have a c++ code that is using OCI API that is running both in
    windows and in spark.
    (The same c++ code compiled and running in both platforms)
    and asking the same query.
    In windows, everything is OK but in spark
    it failes...
    The ORACLE Server is installed on win2003 station
    Both client and server ORACLE version is 10.2.0.1.0
    The code is running on spark(oracle instant client is installed)
    This query is a simple select query that selects only one field
    of type VARCHAR2(4000) (the same problem with happen with any
    string type field larger than 150 characters)
    The error occured when calling for OCIDefineByPos method
    when associating an item in a select-list with the type and output
    data buffer.
    The error message is: ORA-01062: unable to allocate memory for define
    buffer
    (This error message signifies that I need to use piecewise operation...)
    But it happens even if I make this varchar2 field to be of size larger
    than 150.
    It is not fair to use piecewise fetch for such a small fields sizes.
    May be there is not configuration setting that can enlarge this
    I know that I wrote here a very superficial description.
    If somebody knows something about this issue, please help
    Thanks

    I had a special luck today after searching the solution per weeks:)I have got a solution.
    When I get the size of the oci field, in the following expressioin
    l_nResult = OCIAttrGet(l_oParam->pOCIHandle(), OCI_DTYPE_PARAM, &(orFieldMD.m_nSize), NULL, OCI_ATTR_DATA_SIZE, m_oOCIErrInfo.pOCIError());
    orFieldMD.m_nSize was of type ub4 but according the manual it must be ub2.
    As a result, the number returned was very large (junk?) and I passed this value to OCIDefineByPos
    Now I changed the type and everything is working!!!
    In windows there is not problem with this expression :)
    Thanks
    Issahar

  • " unable to allocate space from the buffer cache" Message

    Hi
    I am trying to delete a large volume or records from a BTREE database. I have used the DB_SET_RANGE with a cursor to locate the desired records. After that the Dbc::get() with DB_NEXT is called. After deleting a considerable amount of records I am receiving a message in the error callback function as "unable to allocate space from the buffer cache".
    What might be the reason for such a message.
    Regards
    Nisam

    Nisam,
    This means that the cache is full and there are no pages that BDB can evict to make space. Are you running with the default cache size? You can increase the cache size by calling: dbenv->set_cachesize or db->set_cachesize.
    Related docs:
    Selecting a cache size: http://www.oracle.com/technology/documentation/berkeley-db/db/ref/am_conf/cachesize.html
    Bogdan Coman

  • ORA-04031: unable to allocate 64 bytes of shared memory

    Hi All,
    We are performing System copy on a distributed environment with OS Windows 2003 and DB Oracle 10.2.0.4
    While importing the Database (ABAP) only ,we are facing error and 5 import steps are failing  in Import ABAP phase.
    Error is "ORA-00604: error occurred at recursive SQL level 1
    ORA-04031: unable to allocate 4120 bytes of shared memory ("shared pool","select user#,type# from user...","Typecheck","kgghteInit")
    (DB) INFO: disconnected from DB"
    There is already one Oracel Instance OracleXX1 is runing this is the second instance and the server has around 1.75 GB RAM...i
    Can you please suggest what could be the error.
    Regards
    Ajay

    Dears,
    Please try increase your database parameter shared_pool_size in pfile and then try to resume the activity.
    Regards,
    Shivam

  • ORA-04031: unable to allocate 4096 bytes if shared memory

    Hello Gurus,
    Did anyone got this type of error before:
    ERROR:
    ORA-20414: Materialized View refresh failed - ORA-12008: error in materialized view refresh path
    ORA-04031: unable to allocate 4096 bytes of shared memory ("shared pool","IDX_MIF_SITE","pacdHds_kkpaco","stP_kkpacd: kkpodPacdInit")
    Every sunday full refresh of the data warehouse is scheduled. This sunday it didn't complete and gave us the above error. This can be solved by increasing the shared pool memory size. But DBA doesnot want to increase it every sunday(This has been going on for 3 weeks now) and it's not feasible to increase like this everytime.
    We want to find the actual cause of it and fix?
    Does anyone know the solution or can throw some light on this issue?
    Thanks,
    Sanjay

    We want to find the actual cause of it and fix?The cause is simple - you have run out of memory assigned to the Shared Pool in the SGA.
    The root cause is more of an issue. The Shared Pool is mostly used for keeping the SQL statements and supporting information (such as cursor support). Each unique SQL statement requires it's own area in the shared pool, however identical statements can used the same (shared) area. Shared Pool is also used to store the 'current' data dictionary (table, view, etc.) information. And in some cases, it's also used for 'large' operations such as direct path insert block builds.
    Some of the possible reasons for running out of shared pool might include
    - it's simply undersized;
    - not enough SQL is actually shareable;
    - the large pool has not been allocated.
    That second one is frequent when the application builds up SQL statements by concatenating pieces, including literals (user input) and then executing the unique statement. This is a common technique by developers using .Net, Perl or having SQL Server background. (That mode of operation is very susceptible to SQL Injection.)
    You can get a lot more info from:
    - searching the forum;
    - looking in the docco (Concepts manual and Performance Tuning guide);
    - books, like Tom Kyte's "Expert One on One Oracle", "Effective Oracle By Design", and newer on apress.com

  • Testcase for error - "Unable to allocate thread control block"

    Hello,
    The down-below code throws the error message:
    db_stat: Unable to allocate thread control block
    BDB: 4.8, OS: Ubuntu 9.10
    Thanks
    #include <stdlib.h>
    #include <sys/ipc.h>
    #include <db.h>
    #define DIRECTORY "/tmp/db"
    int main()
    // open environment
    DB_ENV *handle;
    int status = db_env_create( &handle, 0 );
    status = handle->set_cachesize( handle, 0, 32*1024*1024, 0 );
    status = handle->set_thread_count( handle, 0x100 );
    key_t key = ftok( DIRECTORY, 'M' );
    handle->set_shm_key( handle, key );
    u_int32_t flags = DB_CREATE | DB_INIT_MPOOL | DB_INIT_TXN | DB_INIT_LOCK | DB_INIT_LOG | DB_SYSTEM_MEM;
    status = handle->open( handle, DIRECTORY, flags, 0644 );
    if( status != 0 )
    exit( 1 );
    // raise error
    chdir( DIRECTORY );
    for( int i=0; i < 0x1000; ++i )
    system( "db_stat -e | grep process/thread | wc" );
    return 0;
    }

    Hello,
    I am still looking into this, but upon closer examination here is the situation, basically as reported.
    The test calls set_thread_count which sizes the memory. In __env_attach(), (dbenv->thr_max is used to size the region. So you are correct, the higher the value used in set_thread_count, the larger the size of the region will be. Eventually that memory will be depleted, and __env_alloc_size() returns ENOMEM, after multiple calls to system(db_stat). __env_alloc_free() is not called. This is the part I am still investigating.
    The test uses system to fork a separate processes for db_stat and the failing stack is:
    lt-db_stat: assert failure: ../dist/../env/env_failchk.c/426: "ret == 0"
    lt-db_stat: __os_stack+0x2b
    lt-db_stat: __os_abort+0x1d
    lt-db_stat: __db_assert+0x47
    lt-db_stat: __env_set_state+0x53c
    lt-db_stat: __env_attach_regions+0x38b
    lt-db_stat: __env_open+0x154
    lt-db_stat: __env_open_pp+0x334
    lt-db_stat: lt-db_stat
    So db_stat is opening an environment, attaching to its region, and then __env_set_state() calls __env_alloc(). It is __env_alloc() which fails with ENOMEM after some point when there is no more space to be allocated from the shared region. And I'm still looking into that space would be returned to the shared region.
    Thanks,
    Sandra

  • Unable To Allocate Cells in Liveoffice

    i have the below error in liveoffice applied on excel and xir2
    unable to allocate cells there is no enough rows
    even that the query we make doesnt return more than 15000 record
    so please if there is any solution for this error i need it ASAP

    Hi,
    Please note that XIR2 is not supported anymore, it is always important to ensure that you are using a supported product.
    FYI there has been a bug logged for this : Bug #ADAPT00646236 and it looks like this has been solved in 3.1 product.
    Please install XI 3.1 sp4 with the latest FP and test .
    Kind regards
    Steph

  • Error unable to allocate system resources

    Hi,
    In LabWindows/CVI I want to create a buffer of shorts, but when I run the
    program
    I get the message unable to allocate system resources. When I create
    the buffer with chars I don't get that error..
    What to do?
    Thnks

    roy schrieb in im Newsbeitrag: [email protected]..
    >
    > Hi,
    >
    > In LabWindows/CVI I want to create a buffer of shorts, but when I run the
    > program
    > I get the message unable to allocate system resources. When I create
    > the buffer with chars I don't get that error..
    > What to do?
    >
    > Thnks
    Roy,
    please show us the code you try to create the buffer. Maybe there is
    something wrong with it.
    Stephan

  • Unable to allocate memory for mutex; resize mutex region

    I have BDB on linux. I am trying to run my app, but I am getting this when it tries to set up the environment. Do I need to set any environment variable or something?
    Here is my setting.
    <property name="allowCreate" value="true"/>
    <property name="cacheSize" value="65535000"/>
    <property name="cacheCount" value="30"/>
    <property name="initializeCache" value="true"/>
    <property name="initializeLocking" value="true"/>
    <property name="transactional" value="true"/>
    Thanks.
    ------------- Standard Error -----------------
    unable to allocate memory for mutex; resize mutex region
    Testcase: testRunService took 1.842 sec
    Caused an ERROR
    Cannot allocate memory
    java.lang.OutOfMemoryError: Cannot allocate memory
    at com.sleepycat.db.internal.db_javaJNI.DbEnv_open(Native Method)
    at com.sleepycat.db.internal.DbEnv.open(DbEnv.java:262)
    at com.sleepycat.db.EnvironmentConfig.openEnvironment(EnvironmentConfig.java:908)
    at com.sleepycat.db.Environment.<init>(Environment.java:30)
    Edited by: user635741 on Oct 23, 2008 9:19 AM

    Hello,
    Based on the error, unable to allocate memory for mutex; resize mutex region,
    have you tried increasing the mutex region?
    The documentation on the setMaxMutexes method is at:
    http://www.oracle.com/technology/documentation/berkeley-db/db/java/com/sleepycat/db/EnvironmentConfig.html#setMaxMutexes(int)
    You can run db_stat -x
    to display the mutex subsystem statistics.
    You'll see the information for statistics like:
    Mutex region size
    The number of region locks that required waiting (0%)
    Mutex alignment
    Mutex test-and-set spins
    If that does not look to be the problem, just let me know.
    Thanks,
    Sandra

  • ORA-04031: unable to allocate 33568 bytes of shared memory  in Oracle 10g

    Hi,
    I am getting following message frequently while taking export in Oracle 10g database:-
    EXP-00008: ORACLE error 4031 encountered
    ORA-04031: unable to allocate 33568 bytes of shared memory ("shared pool","DBMS_REPCAT_UTL","PL/SQL MPCODE","BAMIMA: Bam Buffer")
    ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_REPCAT_UTL"
    ORA-06512: at "SYS.DBMS_REPCAT_EXP", line 87
    ORA-06512: at line 1
    EXP-00083: The previous problem occurred when calling SYS.DBMS_REPCAT_EXP.schema_info_exp
    EXP-00008: ORACLE error 4031 encountered
    ORA-04031: unable to allocate 16416 bytes of shared memory ("shared pool","SELECT SYNNAM, SYNNAM, SYNTA...","kgghtInit","kgghtInit")
    EXP-00000: Export terminated unsuccessfully
    Whats could be the reason?

    There could be a few reasons causing the problem. From literal message it would look like your shared pool size is small and you need to increase. But the root cause of the problem is a little more complicated than that. I suggest you read metalink doc
    Diagnosing and Resolving Error ORA-04031
    Doc ID: Note:146599.1

  • ORA-04301:Unable to allocate 8144 bytes of shared memory

    I am using 64 bit version of oracle 10g Release 2 (10.2.0.1.0)
    I am randomly getting this error. The full error message is below:
    ORA-04301:Unable to allocate 8144 bytes of shared memory("large pool","COMPANYHISTORY","kxs-heap-w","qesaQBinit:buffer")
    The table name keeps changing as the queries change. Similarly sometimes instead of "large pool" I get "shared pool" in the above message.
    I tried increasing the shared pool size but the problem did not resolve.
    Please help
    Regards
    Madhup

    I have already tried that, but I am not able to solve the problem. Is there a way to compute how much space you should define for the shared pool, the large pool etc.
    Regards
    Madhup

Maybe you are looking for