Skip to content
Settings

MODEL_ALREADY_UNLOCKED — model is already in the UNLOCKED state

cyoda-go version 0.7.1

MODEL_ALREADY_UNLOCKED — an unlock-transition request was issued against a model that is already UNLOCKED. The expected pre-state was LOCKED.

HTTP: 409 Conflict. Retryable: no.

Returned when POST /model/{name}/{version}/unlock is issued against a model whose current state is UNLOCKED. Distinct from MODEL_NOT_LOCKED, which is reserved for the entity-write-without-lock path on the entity service: this code is the symmetric counterpart of MODEL_ALREADY_LOCKED for the admin lifecycle.

The problem-detail body carries entityName, entityVersion, expectedState (always LOCKED), and actualState (always UNLOCKED) so callers can branch on the precondition without scraping the message string.

Not retryable. Lock the model first via POST /model/{name}/{version}/lock if a subsequent unlock is required.

  • errors
  • errors.MODEL_ALREADY_LOCKED
  • errors.MODEL_NOT_LOCKED
  • errors.CONFLICT
  • cyoda help errors — Every error response from the Cyoda REST API carries a structured errorCode in the properties object. Multiple codes may share the same HTTP status. Programmatic handling keys on errorCode, not HTTP status.
  • cyoda help errors MODEL_ALREADY_LOCKED — Returned by any admin operation that requires the model be in the UNLOCKED state, including:
  • cyoda help errors MODEL_NOT_LOCKED — Entity creation and bulk write operations require the model to be in the LOCKED lifecycle state. Models in DRAFT or unlocked-for-editing state reject writes to prevent schema changes from affecting in-flight data.
  • cyoda help errors CONFLICT — The server detected that the entity was modified by another writer between the time it was read and the time the current write was committed. Normal outcome under concurrent load.