While performing a load test on the Mendix App using Jmeter, an error occurred.
The error was that the Attribute "id" managed internally by the Mendix App was duplicated.
I checked with Mendix Support about this error and was told that it may occur under the following conditions.
JMeter may have multiple actions on the same object in a short period of time that are uncommitted. It could be one of the following three things.
1. Multiple runtimes are trying to INSERT an object with the same ID for the first time.
The steps in the process until the problem occurs are as follows
- Environment running on two or more servers
- A persistent object (PO) is created but not committed.
- At this point, there is an uncommitted PO in the client state (it still has the reservation ID from when it was created).
- Two microflows that commit that object are called almost simultaneously.
- In this way, multiple runtimes try to INSERT an object with the same ID for the first time.
2. If the save button is not disabled during an action, this will occur if two clicks are made at short intervals, even on the same server.
3. This can occur with asynchronous actions.
In order to prevent such errors from occurring, a retry process must be incorporated depending on the use case. However, in a normal system, retry processing is not built into the commit process.
Therefore, we consider this behavior to be a bug in Mendix.
Could you please fix the Mendix to prevent this kind of error from occurring?