Workshop: CM-Handle States & Locking

Workshop: CM-Handle States & Locking

Main Takeaways:

  1. Anchor Lock & session will NOT be used during any CM Handle State transitions. But implementation will remain in place

  2. Hazelcast (map) with Time-To-Live will be used to implement semaphore to prevent multiple instances working on same CM Handle (Module Sync & Data Sync)

  3. When model-sync fails the Cm Hale with go inst state LOCKED, reason: MISBEHAVING, details '#attempt, lastAttemptTime'

    1. The retry-watchdog can use the lock details to count attempts and implement a simple back-off algorithm i.e double the time for 'retry' on each attempt

  4. Data (cached and passthrough) can only be accessed when a CM Handle is in state 'READY'

  5. Read access to cached data (NFP-Operational) depends on the Sync-state and the type of access