Workshop: CM-Handle States & Locking
Main Takeaways:
Anchor Lock & session will NOT be used during any CM Handle State transitions. But implementation will remain in place
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)
When model-sync fails the Cm Hale with go inst state LOCKED, reason: MISBEHAVING, details '#attempt, lastAttemptTime'
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
Data (cached and passthrough) can only be accessed when a CM Handle is in state 'READY'
Read access to cached data (NFP-Operational) depends on the Sync-state and the type of access