2 Replies Latest reply on Apr 16, 2012 3:08 PM by Jamie_Lockhart

    OATS java.lang.OutOfMemoryError: Resource temporarily unavailable


      OATS details:
      Version: Production
      Build ID:

      Script: OAM Authorization involves:
      1. Login
      1. Hit a protected URL - 1 step
      1. Logout

      users: 2500
      Thinktime: 0.1s
      No iteration delay
      OATS Settings:
      Maximum users per process: 500
      Java Heap size: Default

      After starting the test, as soon as 600+ users start running the agent becomes "Orphaned agent" and the test crashes. In the OATS agent log, the following error is seen

      [ERROR][osal   ] Unable to discover information about /mnt/hugepages
      [WARN ][memory ] Could not acquire large pages for Java heap.
      [WARN ][memory ] Falling back to normal page size.
      Configuration location:
      Configuration file:
      file:/tmp/tmpdir5297454574978925058/config.ini loaded
      Install location:
      Framework located:
      Loading extension: oracle.oats.jagent.osgi.adapters
      eclipse.properties not found
      Framework classpath:
      Debug options:
      file:/scratch/mutbalas/oats/agent/.options not found
      Time to load bundles: 133
      Starting application: 1940
      [ERROR][thread ] Could not start thread Thread-363. Resource temporarily unavailable
      java.lang.OutOfMemoryError: Resource temporarily unavailable in tsStartJavaThread (lifecycle.c:1096).
      Java heap 3G reserved, 338192K committed
      Paged memory=18014398501718624K/88338756K.
      Your Java heap size might be set too high.
      Try to reduce the Java heap size using -Xmx:<size> (e.g. "-Xmx128m").
      You can also try to free low memory by disabling
      compressed references, -XXcompressedRefs=false.
      at java/lang/Thread.start0()V(Native Method)
      at java/lang/Thread.start(Thread.java:597)
      at oracle/oats/scripting/modules/basic/api/internal/IteratingAgent.IJavaAgent_Start(IteratingAgent.java:495)
      at oracle/oats/jagent/cntlproxy/AgentRampupStarter.addVUs(AgentRampupStarter.java:86)
      at oracle/oats/jagent/cntlproxy/AgentVUsManagerImpl$1.run(AgentVUsManagerImpl.java:888)
      at jrockit/vm/RNI.c2java(JJJJJ)V(Native Method)
      -- end of trace
      [ERROR] Exit on OutOfMemory requested. Exiting.
      JRockit aborted: Exit requested on OOM (51)

      Agent details:
      The OATS linux agent was installed as "root" as suggested by OATS dev on a 64-bit box with 45G RAM. When the test is running, only 4G is being used by the OATS agent and more than 40G free memory is remaining (no other process/server is running).

      This is completely blocking out stress tests please help asap.