From 0f71bc5c82421cce0e61adee6ba203c4c0c7ce0d Mon Sep 17 00:00:00 2001 From: ConnorLand Date: Tue, 19 May 2026 15:16:20 +0200 Subject: [PATCH 1/2] add app type support section to OL doc --- .../refguide/runtime/optimistic-locking.md | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/content/en/docs/refguide/runtime/optimistic-locking.md b/content/en/docs/refguide/runtime/optimistic-locking.md index 149e3905ee5..821d38aab4b 100644 --- a/content/en/docs/refguide/runtime/optimistic-locking.md +++ b/content/en/docs/refguide/runtime/optimistic-locking.md @@ -17,17 +17,30 @@ If a conflict is detected—meaning someone else has modified the data since you You can decide whether optimistic locking is enabled or disabled for your app. -## Behavior of App with Optimistic Locking Disabled +### Support Status by App Type + +Optimistic locking is supported in the following types of Mendix apps: + +| App Type | Support Status | Lowest Supported Version | +| --- | --- | --- | +| Online | Supported | [Studio Pro 11.5](/releasenotes/studio-pro/11.5/) | +| Offline | Supported | [Studio Pro 11.11](/releasenotes/studio-pro/11.11/) | + +Additional information on optimistic locking behavior: +* In online Mendix apps, ___ +* In offline Mendix apps, offline changes are synchronized to the server without being blocked by optimistic locking version checks + +## App Behavior: Optimistic Locking Disabled When two modifications are saved, they are applied in the order of processing. Only changed attributes are written to the database. This means that if the two commits change different attributes or associations of an object, the changes are not overwritten. For example, if one user commits changes for `AttributeA` and `AttributeB` and another user commits changes for `AttributeB` and `AttributeC` for the same object, then both `AttributeA` and `AttributeC` are committed according to both users' changes. `AttributeB` is committed based on whichever change was committed later. -## Behavior of App with Optimistic Locking Enabled +## App Behavior: Optimistic Locking Enabled The Mendix runtime implements optimistic locking by tracking the version of all objects using the attribute `MxObjectVersion` with type `Long`. Although the `MxObjectVersion` attribute is not write-protected, setting this value does not result in it being saved to the database. Its current value is compared with the value for the same object in the database. -### How to Enable and Use Optimistic Locking +### Enabling and Using Optimistic Locking You can enable optimistic locking for your Mendix application in the `Runtime` tab in the **App Settings** dialog: From 103d9542bd7d40ff92696a8104ce09800a88c00c Mon Sep 17 00:00:00 2001 From: ConnorLand Date: Fri, 22 May 2026 12:11:09 +0200 Subject: [PATCH 2/2] redo offline info per SME feedback --- .../en/docs/refguide/runtime/optimistic-locking.md | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/content/en/docs/refguide/runtime/optimistic-locking.md b/content/en/docs/refguide/runtime/optimistic-locking.md index 821d38aab4b..56b438fda6f 100644 --- a/content/en/docs/refguide/runtime/optimistic-locking.md +++ b/content/en/docs/refguide/runtime/optimistic-locking.md @@ -21,14 +21,9 @@ You can decide whether optimistic locking is enabled or disabled for your app. Optimistic locking is supported in the following types of Mendix apps: -| App Type | Support Status | Lowest Supported Version | -| --- | --- | --- | -| Online | Supported | [Studio Pro 11.5](/releasenotes/studio-pro/11.5/) | -| Offline | Supported | [Studio Pro 11.11](/releasenotes/studio-pro/11.11/) | - -Additional information on optimistic locking behavior: -* In online Mendix apps, ___ -* In offline Mendix apps, offline changes are synchronized to the server without being blocked by optimistic locking version checks +* Online apps: supported since [Studio Pro 11.5](/releasenotes/studio-pro/11.5/) +* Offline apps: supported since [Studio Pro 11.11](/releasenotes/studio-pro/11.11/) + * **Additional Information on Optimistic Locking in Offline Apps** — As data can live for a long time in offline apps, changes based on that data that are synchronized from offline apps to the Mendix Runtime Server are committed to the database without optimistic locking to avoid conflicts. As such, offline data synchronization may overwrite changes. ## App Behavior: Optimistic Locking Disabled