Server Side error - Memory insufficient memory due to 32bit

Hi Experts,

Anyone here faced this error before: "Unable to read the message due to insufficient memory. Size of message = 3004246"

Happen when tried to save Order Entry (customization screen).

I use the clear button at the toolbar to clear the cache. But it did not help.

2019-04-15_9-24-28

Please advice. Thanks

It would be helpful to see the full stack trace from the “detail” button.

1 Like

Hi, what size is the order?

Apparently 3GB big bahaha :grimacing:

2 Likes

I took that number to be the size of the error message

EDIT: and it’s only 3 MB, not 3 GB :wink:

1 Like

We ran into that error and we received this reply from Epicor Support:

The Epicor client uses 32bit .NET and because of that the maximum theoretical amount of RAM that it can use is 2^31bytes (2.4GB) but in practice it is closer to 2GB because of .NET overhead. If you get this error message and if Windows is reporting that you have available RAM, you will need to reduce the demand for RAM that the Epicor client has access to by closing unused Epicor windows/modules. To get around the 32bit limitation on RAM usage, Epicor does have a 64bit client. To use the 64bit Epicor client, change your Epicor shortcut to point to the Epicor64.exe file instead of the epicor.exe (which is 32bit).

1 Like

The customization for the SO screen is quite lot.The total lines for this SO is 66. It takes time to load each line. In between if i perform any action i’m getting this error message?

Based on my findings:

  1. due to customization
    or
  2. physical memory

Have you checked for a memory leak? Perhaps either using the memory leak tester or sharing some relevant code will help.

@Bart_Elia this happens if you run a BAQ with about 500K rows (Which is small potatoes for a mfg plant nowadays). Just wondering if you guys have any plans to phase out the 32-bit and make the 64-bit the default?

Obviously we can change it. But the Warning makes it feel like “dont do it!!” lol
image

I think the 32-bit should have a warning too saying “dont use this, use 64-bit unless you sell Lemonade only” :slight_smile: #LemonadeStand

1 Like

At least you can suppress this warning for your users if you are so inclined :slight_smile:

Hi,

I changed the runtime from 32 to 64 but this issue still persists.

in fact, hits the error if run SO with 2 lines or more that than.

that doesnt sound good at all. BAQ? Dashboard? or SO Entry? if its SO Entry, does it happen in BASE - Perhaps you have a Customization that runs a BAQ or a BO and tries to pull in too much data?

Hi,
Could you please show the [Detail] of the error? Or even better, go and look at the Server Windows Event Logs when you get the error, and look at the Server exception details. That could give us an idea of what is throwing the exception.

It’s also relevant to know info about the environment you are getting this error from.
Is the client running on the Epicor Server or on a client workstation/pc?
Is Epicor App Server and DB server on a single server?
Are more than 1 user running Epicor client(s) simultaneously when the error occur?
Other users, using their own client, on separate computer, are able to replicate the error?

There are 3 processes that will consume machine’s RAM when running the Epicor Client.

  1. CLIENT - Epicor.exe/Epicor64.exe - Epicor client (as mentioned in other answers, 32bit won’t go over 4 GB, whereas 64bit could go over practically unlimited - frequently when running Dashboards with non well filtered BAQs)
  2. SERVER - w3wp.exe - The Epicor App Server IIS Worker Process associated to the website (you may have as many of these as you have Epicor environments installed ont he App Server.
  3. SERVER - sqlservr.exe - SQL Server DB engine.

If the SQL Server and the IIS Web Server (Epicor Server) are both running on the same machine, then you need to ensure SQL Server has a limited RAM allocated, otherwise it will consume unlimited (all) memory on the server, which will then leave limited RAM to the IIS worker processes.

Server Side Error indicates that the error is coming from the server and hence you need to look at the DETAIL of the exception and try to figure it out what is causing it. My guess is that there is a BPM with an (infinite) loop that gets aborted by the server after N iterations, or that it is doing IO and loading large file(s) into memory, or the UI has a customization with an embedded Dashboard or too much data loaded into UI control (ultragrid), maybe with an unfiltered BAQ.

Best Regards,
PSE

Hi Haso,

Maybe the reason behind the Epicor.exe 32 bit client by default is restricted memory allocation per client, specially if all users run Epicor client from a single server (via RDP/Citrix).

If you run the client on your own personal computer, then it may make sense to use the Epicor64.exe but only if you get System.OutOfMemoryException.

Regards,

1 Like

@carlosqt Agreed. I was thinking maybe because of thin clients, ARM, Tablets etc…

Hi There,

Previously, someone here suggested BAQ filtering tool. Could you please share about this Tool.