KB Article #163947

max message size cached in memory

Problem

-- what is the message size limit (or "max message size cached in memory")
-- why should it be changed ?
-- how to change it ?

Resolution

* When the size of the processed message is
    < message limit : the message is cached in memory
    > message limit : the message is written in a physical file in Integrator filer directory

* Default value for the message limit is 4k. Depending on the load (number and size of the messages), the complexity of the integration flow, the memory available on the operating system and the I/O speed, it can be interesting to modify such limit.

* Example :  we need to process high load (more than 5 messages /sec) + most of the messages are around 10k + there is several Go memory available on the system + we noticed that the I/O speed is low
In such scenario, it makes sense to increase the limit in order to use more memory and to limit the number of I/O calls.

* To change the limit :

1-    Copy the attached program in your B2Bi environment
2-    Integrator server needs to be started but tasks must be stopped. Stop the TE in the Interchange for both nodes to do that.
3-    Run Integrator profile
4-    Run the > r4edi change_msg_limit.x4 <new_limit> (<new_limit> in bytes)
5-    No error means that the change has been complete successfully
6-    Perform those steps on each nodes