3:24:56 PM PDT - Wed, Jun 5th 2013 |
|
Hi John,
Learned a few more things....
1. Add an "-Xms" argument right after the "-Xmx" one already in the activemq script. Make the size for this the same as the one for "-Xmx".
2. First try leaving it at the default 512M size so the arguments would be "-Xmx512M -Xms512M". If that doesn't work, bump them both up to 1G.
3. Also specify "-d64" as an argument. This allows bigger memory sizes by using a 64-bit data model.
4. Make sure you are pointing to a 64-bit java executable. Do a "which java" and then run "file" commands on that absolute file path. It may be symbolically linked multiple times so just keep following the links until you find the real executable and the file commands indicates what it is (either a 32-bit or 64-bit executable). You want to make sure it's not a 32-bit executable. I doubt this is it if you are running on a dedicated compute server, but it's worth checking just to make sure. Even with a 32-bit executable using the "-d64" flag should be done.
So with all of these you may end up with arguments like "-d64 -Xmx1G -Xms1G" in the activemq script. I'm assuming with all this that you have many gigabytes of available memory so the problem isn't that it can't allocate what is already allocated (512M).
Gary
|