AwareIM runs as three separate Java programs:
the AwareIM Server
Tomcat (the web server)
the Configuration Tool
Each one has its own memory limit. Find the one that ran out first. If you raise the memory of the wrong one, nothing changes.
🔎 1. Which part ran out?
Where you see OutOfMemoryError / Java heap space | Part to give more memory |
AwareIM Server output, or Out of memory error encountered in the source OS/TS/QS | AwareIM Server |
Browser shows HTTP Status 500 … OutOfMemoryError, or the error is in the Tomcat output | Tomcat |
| The Configuration Tool fails when it saves, exports, publishes or puts a version under test | Configuration Tool |
📈 2. “AwareIM uses lots of RAM even with no users”
This is usually normal. Java takes memory up to its limit (-Xmx) and keeps it, even when it does not need it any more. So Task Manager can show high use when the server is idle.
It is a leak only if memory grows steadily over days with the same number of users. Then it ends in an OutOfMemoryError.
To see the real use inside Java, use VisualVM, a free Java monitor.
⚙️ 3. Where to set memory
How you run AwareIMWhere to set itControl PanelControl Panel → Settings → Memory. This writes -Xmx to AwareIM/bin/startupOptions.props (AWAREIM_SERVER_STARTUP, TOMCAT_STARTUP)Windows serviceThe service ignores the Control Panel settings. See the Windows service replyConfiguration ToolThe -Xmx line in AwareIM/ConfigTool/eclipse/ConfigTool.ini
Restart AwareIM after you change memory.
Check the settings again after each upgrade. Older upgrades put the memory back to the default.
📏 4. How much to give
Leave enough RAM for Windows or Linux, and for the database if it runs on the same machine. If you give Java too much, the operating system swaps memory to disk and everything gets slower. In one forum case, doubling the server memory made an import take 7 hours instead of 40 minutes.
Starting points that forum users reported:
| Machine RAM | AwareIM Server | Tomcat | Configuration Tool |
| 8 GB, database on the same machine | 3 GB | 1–2 GB5 | 12 MB–1 GB |
| 16–24 GB, database on another machine | 8–16 GB | 1–4 GB | 1 GB |
Give more to:
the Server for rules, processes, imports, documents and pictures.
Tomcat for many users at the same time.
the Configuration Tool for a large application, or when you test several versions at once (1–4 GB).
On a VPS (virtual server), count only guaranteed RAM, not burst RAM.
🐛 5. Things in an application that eat memory
| Cause | Fix |
| Logging set to Full in production | Turn logging down or off |
| Tomcat Output window left open in the Control Panel | Close it. It uses CPU and memory |
FIND or IMPORT on thousands of records at once | Add IN BATCHES OF 100 |
| Reference attribute set to “Fetch all records at once” on a big table | Turn it off |
| Large pictures or documents stored in the database on records shown in grids | Store them in the file system, and use the SCALE_IMAGE function to make pictures smaller |
| Process in an endless loop | Fix the loop. It also makes the EXECUTION_CONTEXT table grow very big |
| Very long session timeout with many users | Lower the session timeout. Each open session holds Tomcat memory |
🚫 Do not
Use “RAM cleaner” tools. Java takes the memory back within minutes, and the cleaner makes the server slow.
Add -XX:PermSize or -XX:MaxPermSize. Current Java does not use them.
Still stuck? Post which part ran out (see step 1), your memory settings, the machine RAM, and your AwareIM version and build.