Product: Signals Notebook
Simultaneous save to external database, how we handle this situations to avoid conflict while concurrent editing? When we should use it and when it is safe to just add force=true?
Problem Description: The POST API to attach experiment has an optional digest parameter. I can see it in the response to the GET request. A Digest is like the version of the entity. The digest of an entity changes after each edit, and new digest is returned in the response of the POST/PATCH request. The client should track the value of the digest. If the entity is modified by others while the client is modifying it, the client’s digest may be outdated. If the digest is outdated, the subsequent request will fail with 428. Thus the client can know the entity is modified by others. The client can use “force=true” to simplify code if there is only one client or user modifying an entity (experiment/notebook) at the same time. When multiple clients are modifying the same entity with “force=true”, some updates might be overridden by others (e.g. some attachments are not visible in the experiment). Note: If you still need assistance, contact support at email@example.com