Apache will not start w. heap (-Xmx) >768m - JVM fails - out of mem [316]


The bug/issue

  1. I attempted to start Apache Tomcat 6.0 (Java 1.5) using the catalina.bat batch file with JVM settings listed below.

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
3. What you expected to happen or see: Normal startup of the tomcat app in the JVM (see below for supporting details).
4. How you tried to fix it & what happened: Lowered Java Heap setting to only allocate 512MB instead of the “usual” (previous) 768MB.
5. If its an application compatibility problem have you tried the application fixes?:
6. Details (exact version) of any application involved with download link:
Apache Downloads (edit catalina.bat startup file to set CATALINA_OPTS so that it allocates the heap as below).
7. Whether you can make the problem happen again, and if so exact steps to make it happen:
I can reproduce this easily, switch my heap allocation to -Xmx768m and it will always happen. At 512m it does not.
8. Any other information (eg your guess regarding the cause, with reasons):
Please see bottom of this bug report for additional, supporting details and “guesses”.

Files appended. (Please zip unless screenshots).

  1. Screenshots illustrating the bug:
  2. Screenshots of related CIS event logs and the Defense+ Active Processes List: No event on same day in D+ log. Everything running as trusted in APL.
  3. A CIS config report or file.
  4. Crash or freeze dump file:

Your set-up

  1. CIS version, AV database version & configuration used:
    5.0.163652.1142, 6671
  2. a) Have you updated (without uninstall) from CIS 3 or 4, if so b) have you tried reinstalling?:
    Yes, this is a CIS3 → 5 upgrade. I rebooted between and after.
  3. a) Have you imported a config from a previous version of CIS, if so b) have U tried a preset config?:
    No. Started anew.
  4. Other major changes to the default config (eg ticked ‘block all unknown requests’, other egs here. )
    None, but tried disabling some features and added java.exe as a “Trusted Application”.
  5. Defense+ and Sandbox OR Firewall security level:
    Tried Clean PC, Training, and even Disabled mode.
  6. OS version, service pack, no of bits, UAC setting, & account type:
    XP SP3, 32bit, running as Administrator
  7. Other security and utility software installed:
    No other security s/w installed
  8. Virtual machine used (Please do NOT use Virtual box):
    Not running in VM.

SUPPLEMENTAL DETAILS:
Upgraded from v3.x (this was working fine prior to upgrade).

Since installing v5.0.16… if I attempt to start a local Apache Tomcat server (I do webapp testing) with my heap settings like: -server -Xms128m -Xmx786m , the jvm will not be created and java “thinks” the PC is out of memory (I have 4GB of RAM, it is not…read on…).

When I adjusted the settings down to -Xmx512m everything started just fine. Furthermore, I can start multiple Tomcat instances on the PC with the -Xmx512m setting, so I know there is plenty of (real and virtual) memory available on the PC.

I can only think that CIS is stopping the process from allocating the memory I requested somehow.

I have set “java.exe” to be a “Trusted Application” in the Defense+ settings and checked other places in the app, but can’t find anything to indicate that CIS sees a problem with the JVM starting…it just fails to do so.

Like I said, this was working fine (literally same day, just before upgrading to CIS5).

Are there any settings or logs I can look at to see why CIS might be blocking my JVM startup???

Thanks,
AJ

We would very much appreciate it if you would edit your first post to create an issue report in line with the bug forum guidelines and format here. You can copy and paste the format from this topic.

To understand the reasons why we ask you to follow these guidelines please see below.

WHY WE ASK YOU TO FOLLOW THESE GUIDELINES
Bugs/issues can be impossible or very time consuming to fix if developers don’t have enough information to reproduce them. Since CIS is free, development time is limited. So if you want your issue fixed, please use the format below to describe it.

To avoid clutter, issues not described in the format below your post will not be moved to the ‘moderator verified’ issues topic. This means that the developers may not look at it.

Best wishes and many thanks in anticipation

Dennis

Thankyou for making a report in standard format this is much appreciated.

In this case screenshots of your defense plus event logs (Defense plus ~ View Events) after your software has run and your active processes list (Defense plus ~ Active Processes List) when your software is running, are essential to work out if this is a bug, or something which can be resolved by settings changes.

Is your software dependant on Java Web Start (javaws.exe) at all?

Please see the other bug report re Apache in format verified issues to see if there are any similarities. If they seem the same, it may be best top merge them.

Are you using virtual box? If so CIS will not work correctly.

Please say what your current D+ mode is.

It would probably be worth trying a clean install using this approach here.

Best wishes

Mouse

No, Tomcat (download link was provided) is not dependent on webstart. It is a J2EE service/server process, not a client of any kind.

As mentioned, I have tested D+ in “Clean”, “Training”, and even “Disabled” modes (which surprised me when that didn’t work either).

No VirtualBox.

I ran it with the memory setting described, then opened D+ Events and nothing had been reported in that log since yesterday. I can send you the active process list, but that would span multiple screenshots, and nothing there is listed as “not” trusted.

I have a similar instance ony this is Windows XP Pro, SP3. The machine has 2GB memory, about 1.55 gb free when we try and start our application. The app itself is a Java 1.6 client type app, the box is NOT virtual. The app has a max heap space memory of seeting at 1026 MB and when using this, java will not start. If I reduce to 850 MKB, java will start and the app will run.

I have tested the app in Win7 with COMODO CIS and no problems.

I worked with someone via GeekBuddy today and he went down all the same paths that I have, even so far as setting everything to training mode. No luck. I have disabled all components and still failure. The only way to get the app to run with greater than 850 MB heap space is to completely remove COMODO.

This application with 1024 MB heap allocation has noproblems with Vipre, Symantec,McAfee

I’m also XP Pro SP3.

Sounds like we’re seeing the same issue; I’m just a little surprised the heap-sizes aren’t identical. Must be some proportional setting (i.e. taking > 20% of available RAM is prevented or something).

As I think I said in my original post, I was actively testing/running that java app the very morning I upgraded from CIS3.x to 5.x. It ran fine with CIS3, will not start with CIS5 (unless I adjust my heap allocation down). And further, I can start multiple JRE’s with a 512MB setting at the same time, so it’s definitely not a general hardware- or OS-resource issue. Got to be something CIS is doing.

Thanks for the further info and supporting details.

-AJ

Thanks for a very helpful bug report. Moving to format verified.

Would you perhaps try the following specific actions, or tell me you have tried them:

  • tick disable D+ permanently and reboot and retry (you were not clear above whether you had ticked ‘permanently’ and rebooted)
  • untick ‘perform heuristic analysis of command line’ and reboot and retry
  • list all involved executables (inc JVM) under buffer overflow exclusion and reboot and retry

If you could test these one by one, reversing settings after each, that would be best.

Best wishes

Mouse

Waiting for follow up info before adding to BZ

Mouse