Memory Usage Issue

Hello,
We are having problems with the java.exe process taking up all available memory on our system causing it to crash. This is Ignition 7.6.7 with Java 7_u71 on a Windows Server 2008 virtual machine with 8 GB of RAM.

Ignition is set to use a max of 4 GB. For the last couple of weeks there have been two to three clients running. There are about 5300 OPC tags coming in from an OPC-DA server and about 2000 SQL tags and 19 transaction groups running. Each group is looking at 11 tags.

What we observe is a slow increase in the amount of memory being used by the java.exe process. It takes a few days but inevitably it will take up all the memory in the VM causing it to lock up. If I stop Ignition using the GCU the process disappears entirely. When started back up memory usage starts at around 500-800 MB and starts increasing again.

The memory used by Ignition as shown in the console memory tab is normal. It’s usually around 500 - 800 MBs. On the Threads tab nothing seems to be locked up. The AWT-EventQueue-0 and AWT-Shutdown threads have high id numbers (in the 90000s right now) but I’m not sure exactly what that means.

If anyone has encountered this issue before or has suggestions please let me know.

Thanks!

Can you list what modules and their version numbers that you have currently on the gateway ? With Ignition memory staying within a normal range it would seem something is causing a memory leak of some sort in the JVM.

Hi,

We’ve recently been working to track down a leak in the OPC-COM module that behaves in the way you described. I’ve PM’d you a link to a new build that will hopefully solve, or a least help, the issue. Please let us know if it doesn’t help, and we can look more closely at your system.

Regards,

Colby,

Greg Simpson sent me this a few days ago over email support. So far it’s been working much better. There may still be a very slow increase but I think I need a few more days before I can say for sure. I’ll try to check in again on Friday with the current memory usage assuming I don’t restart Ignition between now and then.

Today’s (11/11/14 2:40 PM) java.exe memory usage in Task manager is about 1.28 GB.

Hi,

Thanks for the feedback. I’ve noticed in my testing that there’s a certain amount of inflation that can happen, but then it will settle down, and that makes it hard to judge. For example, I’ve got the memory usage capped at 128mb, and the java.exe process will go up to about 380mb before it stops growing. So yes, keep an eye on it and let me know.

Do you have any of your groups/scan classes set to “read” mode, or is everything subscribed? All of my tests for writing have been good, but there may still be an issue with reads.

Regards,

Hi,

I am having a similar problem. I start off at 500-800 Mb and over a few weeks it goes up to 2.4mb which the the maximum on the server. Ignition isn’t crashing but it is using up all the RAM and significantly slowing down the computer. Is there a solution to this now?

Kind Regards,
Adnan

Hi,

If it’s not crashing, then it’s probably just going there because you’ve allowed it to. If it’s really causing a negative impact on the overall system, you could try reducing the max allocated to Ignition.

Java is pretty much going to use as much memory as you tell it it can. On the flip side of the coin is the raw amount of memory that Ignition needs to do what you’ve asked it to. You don’t want to go so low that you get out of memory errors, but on the other hand, you may not actually need 2.4gb.

Regards,