Avoiding java.io.IOException: Cannot allocate memory

I am creating MappedByteBuffers using FileChannel.map(). If I try to map too large a section of a file, I get the following Exception:
java.io.IOException: Cannot allocate memory
     at sun.nio.ch.FileChannelImpl.map0(Native Method)
     at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:705)What this does not tell me is how much memory I can allocate. Is there some way to check?
++A

The problem is, it would not be a few milliseconds at the start of the code. I should be making this decision within a loop, for each mapping. One iteration, I might be able to allocate 100kb. The next, I might be able to allocate 500mb.
It would be a mistake to try to allocate either amount every iteration.
The memory allocated by these MappedByteBuffers are being passed to another thread in the process, which will, in time, free them up. Meanwhile, this thread is trying to allocate room for another buffer. If the last buffer created used most of the system's resources, I probably cannot make another of the same size immediately. However, I would like to make one as soon as enough memory is available for it to be worth the effort. When that is the case, I would once again like to grab as much memory as possible in order to get the most time-benefit from the allocation.
I will check into the Runtime.getRuntime.freeMemory() proposal and see how that works.

Similar Messages

  • Java.io.IOException: Cannot allocate memory

    Hi all,
    What is the root cause of java.io.IOException: Cannot allocate memory? the
    exception is throws every several days.
    the application is a web application that run in WLS 8.1 sp3.
    source code that throws the exception like bellow, in a http request, the
    method will be called not more than 4 times.
    public void doit() throws IOException {
    Process process = java.lang.Runtime.getRuntime().exec("chmod 777 -R
    /fileroot");
    setProcess(process);
    Error message:
    java.io.IOException: java.io.IOException: Cannot allocate memory
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:143)
    at java.lang.Runtime.execInternal(Native Method)
    at java.lang.Runtime.exec(Runtime.java:566)
    at java.lang.Runtime.exec(Runtime.java:428)
    at java.lang.Runtime.exec(Runtime.java:364)
    at java.lang.Runtime.exec(Runtime.java:326)
    Runtime env overview
    1. WLS start commond
    /opt/bea/jdk142_04/bin/java -server -Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m
    -Dweblogic.Name=myserver -Dweblogic.management.username=wlsUser -Dweblogic.management.password=wlsPWD
    -Dweblogic.ProductionModeEnabled=true
    2. JVM version /opt/bea/jdk142_04/bin/java -version
    java version "1.4.2_04"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
    Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)
    3. OS version # uname -a
    Linux 2.4.21-9.0.1.ELsmp #1 SMP Mon Feb 9 22:26:51 EST 2004 i686 i686 i386
    GNU/Linux
    4. top command response
    20:29:04 up 5 days, 13:51, 1 user, load average: 0.03, 0.03, 0.00
    56 processes: 55 sleeping, 1 running, 0 zombie, 0 stopped
    CPU states: cpu user nice system irq softirq iowait idle
    total 6.6% 0.0% 0.0% 0.2% 0.0% 0.0% 93.0%
    cpu00 0.0% 0.0% 0.0% 0.9% 0.0% 0.0% 99.0%
    cpu01 12.8% 0.0% 0.0% 0.0% 0.0% 0.0% 87.1%
    cpu02 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 100.0%
    cpu03 13.8% 0.0% 0.0% 0.0% 0.0% 0.0% 86.1%
    Mem: 4124016k av, 2905472k used, 1218544k free, 0k shrd, 153952k
    buff
    1327256k active, 1262088k inactive
    Swap: 2097136k av, 0k used, 2097136k free 1686144k
    cached
    Many thanks for reading my post and any advice would be greatly appreciated
    Thanks,
    Steve

    Hi all,
    What is the root cause of java.io.IOException: Cannot allocate memory? the
    exception is throws every several days.
    the application is a web application that run in WLS 8.1 sp3.
    source code that throws the exception like bellow, in a http request, the
    method will be called not more than 4 times.
    public void doit() throws IOException {
    Process process = java.lang.Runtime.getRuntime().exec("chmod 777 -R
    /fileroot");
    setProcess(process);
    Error message:
    java.io.IOException: java.io.IOException: Cannot allocate memory
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:143)
    at java.lang.Runtime.execInternal(Native Method)
    at java.lang.Runtime.exec(Runtime.java:566)
    at java.lang.Runtime.exec(Runtime.java:428)
    at java.lang.Runtime.exec(Runtime.java:364)
    at java.lang.Runtime.exec(Runtime.java:326)
    Runtime env overview
    1. WLS start commond
    /opt/bea/jdk142_04/bin/java -server -Xms2048m -Xmx2048m -XX:PermSize=512m -XX:MaxPermSize=512m
    -Dweblogic.Name=myserver -Dweblogic.management.username=wlsUser -Dweblogic.management.password=wlsPWD
    -Dweblogic.ProductionModeEnabled=true
    2. JVM version /opt/bea/jdk142_04/bin/java -version
    java version "1.4.2_04"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
    Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)
    3. OS version # uname -a
    Linux 2.4.21-9.0.1.ELsmp #1 SMP Mon Feb 9 22:26:51 EST 2004 i686 i686 i386
    GNU/Linux
    4. top command response
    20:29:04 up 5 days, 13:51, 1 user, load average: 0.03, 0.03, 0.00
    56 processes: 55 sleeping, 1 running, 0 zombie, 0 stopped
    CPU states: cpu user nice system irq softirq iowait idle
    total 6.6% 0.0% 0.0% 0.2% 0.0% 0.0% 93.0%
    cpu00 0.0% 0.0% 0.0% 0.9% 0.0% 0.0% 99.0%
    cpu01 12.8% 0.0% 0.0% 0.0% 0.0% 0.0% 87.1%
    cpu02 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 100.0%
    cpu03 13.8% 0.0% 0.0% 0.0% 0.0% 0.0% 86.1%
    Mem: 4124016k av, 2905472k used, 1218544k free, 0k shrd, 153952k
    buff
    1327256k active, 1262088k inactive
    Swap: 2097136k av, 0k used, 2097136k free 1686144k
    cached
    Many thanks for reading my post and any advice would be greatly appreciated
    Thanks,
    Steve

  • WANTED: java.io.IOException: Cannot allocate memory

    hi all!
    anybody seen/knows about this stacktrace:
    java.io.IOException: Cannot allocate memory at
    java.net.PlainDatagramSocketImpl.send(Native Method) at
    java.net.DatagramSocket.send(DatagramSocket.java:581) at
    I have search the corr. PlainDatagramSocketImpl.c impl and didnt find anything about this message?
    Facts: It has nothing to do with max packet size (65k) or so..
    best regards
    michael

    Could it be that this is the call/place where the error occurs? (because the java/io/IOException is thrown here!)
    PlainDatagramSocketImpl send call's [Linux 2.4.21] socket.c sys_sendto (see below).
    java/net/PlainDatagramSocketImpl.c
    * Send the datagram.
    * If we are connected it's possible that sendto will return
    * ECONNREFUSED indicating that an ICMP port unreachable has
    * received.
    ret = NET_SendTo(fd, fullPacket, packetBufferLen, 0,
              (struct sockaddr *)rmtaddrP, len);
    if (ret < 0) {
         switch (ret) {
         case JVM_IO_ERR :
              if (errno == ECONNREFUSED) {
              JNU_ThrowByName(env, JNU_JAVANETPKG "PortUnreachableException",
    "ICMP Port Unreachable");
              } else {
              NET_ThrowByNameWithLastError(env, "java/io/IOException", "sendto failed");
              break;
         case JVM_IO_INTR:
         JNU_ThrowByName(env, "java/io/InterruptedIOException",
                   "operation interrupted");
              break;
    if (mallocedPacket) {
         free(fullPacket);
    return;
    Linux 2.4.21, socket.c:
    asmlinkage long sys_sendto(int fd, void * buff, size_t len, unsigned flags,
                   struct sockaddr *addr, int addr_len)
         struct socket *sock;
         char address[MAX_SOCK_ADDR];
         int err;
         struct msghdr msg;
         struct iovec iov;
         sock = sockfd_lookup(fd, &err);
         if (!sock)
              goto out;
         iov.iov_base=buff;
         iov.iov_len=len;
         msg.msg_name=NULL;
         msg.msg_iov=&iov;
         msg.msg_iovlen=1;
         msg.msg_control=NULL;
         msg.msg_controllen=0;
         msg.msg_namelen=0;
         if(addr)
              err = move_addr_to_kernel(addr, addr_len, address);
              if (err < 0)
                   goto out_put;
              msg.msg_name=address;
              msg.msg_namelen=addr_len;
         if (sock->file->f_flags & O_NONBLOCK)
              flags |= MSG_DONTWAIT;
         msg.msg_flags = flags;
         err = sock_sendmsg(sock, &msg, len);
    out_put:          
         sockfd_put(sock);
    out:
         return err;
    int sock_sendmsg(struct socket sock, struct msghdr msg, int size)
         int err;
         struct scm_cookie scm;
         err = scm_send(sock, msg, &scm);
         if (err >= 0) {
              err = sock->ops->sendmsg(sock, msg, size, &scm);
              scm_destroy(&scm);
         return err;

  • Java.lang.OutOfMemoryError: Cannot allocate memory in tsStartJavaThread

    Running Java Application on Web logic managed server fails with following error:
    java.lang.OutOfMemoryError: Cannot allocate memory in tsStartJavaThread (lifecycle.c:1096).
    Java heap 1G reserved, 741076K committed
    Paged memory=26548K/3145712K.
    Your Java heap size might be set too high.
    Try to reduce the Java heap size using -Xmx:<size> (e.g. "-Xmx128m").
    at java.lang.Thread.start0(Native Method)
    at java.lang.Thread.start(Thread.java:640)
    at java.util.concurrent.ThreadPoolExecutor.addIfUnderCorePoolSize(ThreadPoolExecutor.java:703)
    at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:652)
    at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:92)
    Memory doesn't seem to be an issue, because -Xmx = 1GB is specified in VM args.
    This application needs only 200MB to run (Obtained by running the application in eclipse and
    checking the heap memory usage).
    Not sure whats causing this error? Application runs as single (main) thread
    and towards the end of the program multiple threads(they do JDBC tasks) are
    are spawned. In this particular case, 3 threads were about to be launched, when
    this error occured. Please help in pointing out what the issue is and how this
    can be resolved.
    Here are further details on Jrockit version and VM arguments:
    Following JRockit is used on the Weblogic machine.
    $java -version
    java version "1.6.0_22"
    Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
    Oracle JRockit(R) (build R28.1.1-14-139783-1.6.0_22-20101206-0241-linux-ia32, compiled mode)
    Following are the JVM arguments:
    java -jrockit -Xms512m -Xmx1024m -Xss10240k
    Thanks in advance.

    Noting that you are using a IBM vm and a rather old one at that...
    Threads take java memory. Normally the solution is to increase the maximum java heap. Doing that depends on the memory that the system supports and the maximum that the VM allows and the default that it uses.
    You might want to verify the command line options you are using. You might want to also find out what happens if you use a larger number or smaller one.
    And if all else fails you can use a thread pool rather than trying to create seperate threads.

  • Cannot allocate memory - Concept Explanation Please

    Hello all,
    Just wanted to confirm something.
    I compile a helloword class and the javac does it job.
    Now when I am preparing a larger program from ant like so: /usr/local/ant/bin/ant prepareI get:Buildfile: build.xml
    [property] java.io.IOException: java.io.IOException: Cannot allocate memory
    [property]     at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)
    [property]     at java.lang.ProcessImpl.start(ProcessImpl.java:65)So more memory is required for different compilations of programs, right?
    Is there a way, I can allocate all (most) memory to the javac compiler?
    If I have some of my theory and terminology mixed please correct me.
    Thanks all
    ---------Key Info-----------
    java version "1.5.0_15"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_15-b04)
    Java HotSpot(TM) Server VM (build 1.5.0_15-b04, mixed mode)
    OS: Fedora 7

    Thanks Peter will look into this now.
    Before I find the tut/HOWTO is there any chance of the swap file damaging my server? I mean worst case scenario would be...?
    Just had a look at "top" and it says "swap" on there, is that referring to something eles: (sucks to be a noob!)
    top - 12:32:34 up 14 min,  1 user,  load average: 0.00, 0.00, 0.00
    Tasks:  35 total,   2 running,  33 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0% us,  0.1% sy,  0.0% ni, 99.9% id,  0.0% wa,  0.0% hi,  0.0% si
    Mem:   8140596k total,  8087960k used,    52636k free,    73708k buffers
    Swap: 12578884k total,    28956k used, 12549928k free,  1705984k cachedEdited by: abshirf2 on Oct 2, 2008 7:32 PM
    Edited by: abshirf2 on Oct 2, 2008 7:33 PM

  • Cannot allocate memory exception  - AMD64

    I am getting the following exception when the heap is only 70 % full on a linux AMD64 system with 16 GB RAM and 2 GB swap , the exception occurs even when there is around 3 GB free memory in the heap , any VM option needs to be set ?
    java -Xmx12g -Xms12g RE
    java.io.IOException: java.io.IOException: Cannot allocate memory
    java.io.IOException: java.io.IOException: Cannot allocate memory
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:148)
    at java.lang.ProcessImpl.start(ProcessImpl.java:65)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:451)
    at java.lang.Runtime.exec(Runtime.java:591)
    at java.lang.Runtime.exec(Runtime.java:429)
    at java.lang.Runtime.exec(Runtime.java:326)
    at RE.main(RE.java:22)
    I can attach a sample code if required .

    paul.miner wrote:
    Caffeine0001 wrote:
    On linux, Runtime.exec does a fork and execute. That means that you will need double what your current java process is using in virtual memory(real + swap). Given -Xms12g you will need more than 24g of virtual memory space for your code to work as written. And with vm overhead, more likely a few gigs more.D&#97;mn, that sucks. Will adding swap space alleviate the problem?
    And if you know, does Windows do the same thing?You need at least as much virtual memory free as the parent process is using to do a Runtime.exec() on Solaris and Linux using Sun's VM. So increasing the swap to the point that there is as much free memory as the parent process is using should alleviate the problem. I agree that this sucks. Other VMs may not have this problem.
    I think the Sun VM takes a different approach when it exec() a process in Windows.
    One workaround is to run a small vm that acts a proxy. This small vm would listen on a socket and executes anything that comes in on that socket. So the 12g parent process would open up a connection to this small vm process and send the commands to it instead of Runtime.exec() and in turn the small vm process would do the actual Runtime.exec().

  • Mmap: Cannot allocate memory

    Hi,
    I am running Berkeley DB XML 2.4.16 on Red Hat Enterprise Linux AS release 3 (Taroon Update 6).
    I have a small test program (Java) that configures the environment with the following.
    config.setAllowCreate(true);
    config.setInitializeCache(true);
    config.setTransactional(true);
    config.setInitializeLocking(true);
    config.setInitializeLogging(true);
    config.setVerbose(VerboseConfig.DEADLOCK, true);
    config.setVerbose(VerboseConfig.RECOVERY, true);
    config.setVerbose(VerboseConfig.WAITSFOR, true);
    config.setVerbose(VerboseConfig.REGISTER, true);
    config.setRegister(true);
    config.setRunRecovery(true);
    The environment data directory has a DB_CONFIG with the following single line.
    set_cachesize 1 524288000 3
    When run, it produces the following error.
    mmap: Cannot allocate memory
    PANIC: Cannot allocate memory
    unable to join the environment
    What is somewhat bizarre is that I also have a equivalent C++ application that has no problem opening the environment with even a 2.5GB cache size.
    I have also observed this on other flavors of Linux and also with earlier versions of Berkeley DB XML.
    Any insight would be helpful.
    Thanks,
    Neil
    Edited by: vannote on Apr 15, 2009 3:21 PM

    Hi Lauren,
    I can confirm that the DB_CONFIG is in the environment directory and it is indeed being read as the cache files created in the environment directory do reflect the DB_CONFIG values on a successful open.
    If I set the cache size values in the DB_CONFIG to ~1.8GB or less, the Java version of the application has no problem opening the environment. Any value larger than that, it fails with the previously mentioned mmap error.
    If I remove the DB_CONFIG and explicitly set the cache size/count in code I observe the same behavior.
    Thanks,
    Neil
    Additional Information...
    Yes, I noticed that I contradicted myself and am able to get a larger cache size today than yesterday (1.8 vs. less than 1.5). I realized my test machine is heavily resource deprived. This would not be the case on the target machine which has 16GB of RAM and plenty of swap space available and that machine can't go beyond ~1GB cache size.
    But I guess the constrained resources shouldn’t influence a file mapping on a machine with plenty of disk space as the native version of the application confirms and behaves as expected
    Edited by: vannote on Apr 16, 2009 8:01 AM - Additional Information
    Edited by: vannote on Apr 16, 2009 8:41 AM - Spelling

  • Safari won't open web pgs, says cannot allocate memory - HELP?

    Just got iPod Touch, connected to WiFi, but any web page I try to open with Safari gives me the same message: *POSIX error 12, Cannot allocate memory. NSPOSSIXErrorDomain.* What on earth does this mean, and why can't I open any websites??? Grateful for any assistance! Thanks - lizmo

    I've never succeeded in opening a page yet! This is my first attempt. I get the same error message every time. Thanks for any help.

  • Db_load error: Cannot allocate memory

    Hi
    when I try to import an dump file, i always get this error:
    db_load: BDB2055 Lock table is out of available lock entries
    db_load: Cannot allocate memory
    I executed "db_load -f outdb/outdb2 -h env xass.db"
    and i have set max locks by:
    dbenv->set_lk_max_locks(dbenv,1000);
    but it doesn't work.
    What should I do to prevent this problem?
    Thanks for your help in advance
    Mark
    Update:
    I have doing some tests, and i found that if I increase the number of locks by "set_lk_max_locks" in DB_CONFIG file,  the operation of db_load will success.
    The point is that the larger db file may need a very big value of locks, so why "db_load" doesn't release the locks during the running procedure? Is this a bug for bdb?
    becuase I can't increase the number of locks infinity!
    if not, How can i cause "db_load" release the locks of transaction?
    Does anybody can help me?
    Mark

    Hi Mark,
    If you are importing a dump file into an existing environment and opened with the flags of(can have more) DB_INIT_LOCK | DB_INIT_LOG | DB_INIT_MPOOL | DB_INIT_TXN, then it is true you may see the error about "lock table is out of available lock entries" when the dump file is very big. The db_load process will not release the locks since it needs to provent other process from accessing the database being built to provide data consistency in the transactional environment.
    The usually way for loading a database from a dump file is to specify an empty directory as the home directory. By this, the database will be created in a private non-transactional environment, and you can copy the database into your running environment after the db_load process finishes.
    Regards,
    Winter, Oracle Berkeley DB.

  • Can't restore iPod classic 60GB video.  Cannot Allocate Memory - Disk Utility

    Sorry if this has been asked before but I've been searching the boards and am yet to find a result.
    I have an old iPod classic 60GB (video) which has a dodgy HDD.  It was clicking and in a constant sad face/charging loop.  I've managed to get it display "Please restore iPod" message and it is now being recognised by my macbook.  I've tried to restore it via iTunes but when I try that I get an error message tht says "The iPod could not be restores because it is busy".
    I've tried toformat the iPod using Disk Utility too but i get an error:
    Disk Erase failed with the error:
    POSIX reports: The operation couldn’t be completed. Cannot allocate memory
    The oddest thing is that under disk utility my iPod drive is showing up as a 2TB drive:
    All I'm realy trying to do is restore the iPod so I can try to recover some of the tracks using Disk Drill.  Can anybody help?

    See if you can find a window based PC and try to do a Restore there.

  • I can no longer access Safari on my ipad. I get the error:the operation couldn't be completed. Cannot allocate memory. Help please!

    I am not able to access Safari on my ipad. I get the error message: The operation couldn't be completed. Cannot allocate memory. Can anyone help please??

    Try this first.
    Go to Settings>Safari>Clear History, Cookies and Data. Restart the iPad. Restart the iPad by holding down on the sleep button until the red slider appears and then slide to shut off. To power up hold the sleep button until the Apple logo appears and let go of the button.
    If that doesn't work, reboot the iPad - or quit all apps and restart.
    Reboot the iPad by holding down on the sleep and home buttons at the same time for about 10-15 seconds until the Apple Logo appears - ignore the red slider - let go of the buttons.
    Quit all apps completely and restart the iPad. Go to the home screen first by tapping the home button. Double tap the home button and the task bar will appear with all of your recent/open apps displayed at the bottom. Tap and hold down on any app icon until it begins to wiggle. Tap the minus sign in the upper left corner of the app that you want to close. Tap the home button or anywhere above the task bar. Restart the iPad.

  • Using Disc Utility to copy my hard drive to a brand new external drive and am having the error "Unable to create...(Cannot allocate memory)".

    I'm not very tech savvy but am trying my best to use Disc Utility to copy my hard drive to a brand new external drive and am having the error "Unable to create...(Cannot allocate memory)".
    Last night no problems, woke this morning and it was freezing so I forced a restart and got the grey screen with the folder and question mark. Ran off to best buy to get an external drive... Please help! Thank you!

    I have done both. When I hold down the "C" key it pauses for a few seconds while the cd spins and then the flashing folder icon appears.
    Could be you have the wrong cd/dvd.  The mac will only boot a supported cd/dvd for your machine. The flashing question mark indicdates your machine could not find a valid os.
    When I hold down the "option" key for the startup manager the cursor comes up and moves but the actually manager doesn't come up no matter how long I leave the laptop on.
    Not sure.  Could be your machine does not support the startup manager. You would think the machine would ignore the key.
    Where did you get the dvd?  What is the number on the DVD?
    What machine do you have anyway?
    This site provides more information, but lacks security.
    "A serial number is a unique, identifying number or group of numbers and letters assigned to an individual piece of hardware or software. It's used for various things depending on the product / brand but what is your Mac's serial number for and more importantly... what is it hiding and what can it do for you ?"
    http://www.appleserialnumberinfo.com/Desktop/index.php
    or
    This site provides more information, but lacks security too.
    "A serial number is a unique, identifying number or group of numbers and letters assigned to an individual piece of hardware or software. It's used for various things depending on the product / brand but what is your Mac's serial number for and more importantly... what is it hiding and what can it do for you ?"
    http://www.appleserialnumberinfo.com/Desktop/index.php
    http://www.chipmunk.nl/klantenservice/applemodel.html
        ( hint by K Shaffer  )

  • Unable to copy hard drive on to external device from Disk Utility. Getting error message "cannot allocate memory".

    I am trying to retrieve the information on my hard drive after I spilled liquid on my keyboard . I can get to Disk Utility by using the boot up disk but when I try and copy the hard drive to an external device using "New Image" it tells me it is unable to create a copy because it "cannot allocate memory".

    Were you able to get any help with this problem? My MacBook Pro out of the blue wouldn't boot up all the way and now I'm trying to get a copy of everything onto the new external drive using disc utility but am having the same errors as you! Thank you for sharing any tips!! -Norah

  • Cannot allocate memory error in Oracle 10.2.0.2

    I am using Oracle 10.2.0.2. When will I get the below error. What to do to resolve this issue. Can somebody help me on this
    ROW-00001: Cannot allocate memory||SQLSTATE0=03/18/08 14:27:19
    ROW-00001: Cannot allocate memory||SQLSTATE0=03/18/08 14:27:19
    ROW-00001: Cannot allocate memory||SQLSTATE0=03/18/08 14:27:19
    ROW-00001: Cannot allocate memory||SQLSTATE0=03/18/08 14:28:17Thanks in advance

    ROW-00001 Cannot allocate memory
    Cause: There is not enough memory to run the application.
    Action: Close unneeded applications or increase the virtual memory.
    Or
    Note:387818.1 - did this metalink note help you?

  • Oracle 8i listener issue:  TNS-01168: Cannot allocate memory

    We have a loader application coded in perl/c which connects to DB to load data from flat files. Whenever we have multiple such loader programs running, the listener dies and loading stops. The listener.log is around 2GB. I opened the loag and got following details:
    Listener Log file (2GB file):
    -- File begining ---
    ECHO is on.
    17-FEB-2005 20:40:20 * service_update * scanview * 0
    17-FEB-2005 20:50:20 * service_update * scanview * 0
    17-FEB-2005 21:00:10 * (CONNECT_DATA=(SERVICE_NAME=scanview)(CID=(PROGRAM=C:\Perl\bin\perl.exe)(HOST=AZSACTAPP107)(USER=grp_scanview))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.2.164.17)(PORT=2659)) * establish * scanview * 0
    19-FEB-2005 03:14:26 * service_update * scanview * 0
    19-FEB-2005 04:00:09 * (CONNECT_DATA=(SERVICE_NAME=scanview)(CID=(PROGRAM=C:\Perl\bin\perl.exe)(HOST=AZSACTAPP107)(USER=grp_scanview))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.2.164.17)(PORT=2486)) * establish * scanview * 0
    19-FEB-2005 04:04:27 * service_update * scanview * 0
    19-FEB-2005 04:07:07 * (CONNECT_DATA=(SERVICE_NAME=scanview)(CID=(PROGRAM=C:\Perl\bin\perl.exe)(HOST=AZSACTAPP107)(USER=grp_scanview))) * (ADDRESS=(PROTOCOL=tcp)(HOST=10.2.164.17)(PORT=2644)) * establish * scanview * 0
    19-FEB-2005 04:18:21 * 51
    Error Started at Line #: 2096
    19-FEB-2005 04:18:21 * 51
    NL-00051: internal error code, arguments: [302], [1], [], [], [], [], []
    Above error continued till Line #: 913372
    19-FEB-2005 04:21:15 * 1168
    TNS-01168: Cannot allocate memory
    19-FEB-2005 06:05:30 * 1168
    TNS-01168: Cannot allocate memory
    TNSLSNR for 32-bit Windows: Version 8.1.7.4.0 - Production on 19-FEB-2005 11:13:49
    -- File ended ---
    Is there a known bug and if so what is the resolution? Will upgrading to Net 9i help?
    Let me know if anyone has faced such issue and the resolution.
    Thanks
    Satish

    alll listeners show the TNS-12531 cannot allocate memory message in the listener.log.Only a single listener is required.
    How many listeners run on this system & why more than 1?
    oerr tns 12531
    12531, 00000, "TNS:cannot allocate memory"
    // *Cause:  Sufficient memory could not be allocated to perform the desired
    // activity.
    // *Action:  Either free some resource for TNS, or add more memory to the
    // machine. For further details, turn on tracing and reexecute the operation.

Maybe you are looking for

  • How do i install fonts on 0s 10.7.4?

    how do i install fonts on 0s 10.7.4?

  • Currency as key field

    Hi All, I wanted to know if a unit(currency in my case) is treated as key field in an ODS although it is not explicitly declared in key field area and is placed in data field. Suppose for the same key field in ODS I have a key figure which has 300 Do

  • ICF Service Node

    Hi All, while working with Webdynpro ABAP Application we are getting the following Exception  Web dynpro ABAP Exception : ICF Service Node "/sap/bc/webdynpro/sap/abcd/undefined" does not exist. Here abcd is appliction name.ICF Service Node exists and

  • Multiple Downlopad from DMS Problem

    Hi guys , I am uploading multiple files in DMS using bapi_document_create2. It is working perfectly fine. But the problem is when i want to download particular file from multiple uploaded  files . i am not able to download selected files but a whole

  • How to make the Access Gate SDK work with Web Gate

    When we want control the display of one area in one page, we can define this area as one resource then control the access of it. But when the user has been authenticated in the application, how can we get the user session and then call Access Gate SD