Status: Closed (View Workflow)
Affects Version/s: None
Fix Version/s: None
Optimistic locking (UXPROD-3058) will be enabled in Inventory (UXPROD-3089) in R1 2022 (Lotus). We need to account for this enhancement in MODINREACH where it interacts with Inventory (Create/Update Instance, Holdings and Item records), eg. as part of circulation flow for Patron Holds.
- Include support for "version" attribute of inventory records.
- Handle OL conflict errors and resolution
- Retrieve the current version of the record and attempt to apply changes from MODINREACH activity to latest version of inventory record and retry commit (eg. update item barcode)
- Log unrecoverable errors
- Ideally, propagate appropriate information "up the stack" to relevant MODINREACH API responses, but not required
- Account for possibility that OL does not ship in Lotus (i.e. MODINREACH should continue to function even if OL is NOT enabled)
- Version conflicts returned by Inventory that can be resolved by retrieving an updated version of the record and retrying the update are handled.
- Version conflicts returned by Inventory that cannot be resolved by retrieving an updated record and retrying the update are logged
- BONUS: appropriate errors are propagated to and returned by affected MODINREACH APIs
- Module continues to function if OL is disabled