Uploaded image for project: 'UX Product'
  1. UX Product
  2. UXPROD-2796

Prevent update conflicts when doing manual edits (User A and User B)

    XMLWordPrintable

Details

    • UXPROD features
    • Core: Platform
    • R1
    • R1
    • R1
    • R1
    • R2
    • R1
    • R1
    • R1
    • R1
    • R1

    Description

      Problem statement
      In FOLIO, most storage modules follow the "last writer wins" strategy for handling record updates. From the UI perspective this may lead to a situation when a stale record (older version of a give record) previously loaded into the UI may override a more recent version on the server. Hence relevant updates may get lost in the process and the user is not made aware of what has happened.

      Proposed solution
      From the storage and API perspective, optimistic locking is the proposed strategy to handle conflicts (UXPROD-1752). Handling of updates in FOLIO should rely on more explicit semantics, both in the storage (backend) APIs and the way it is communicated to the user through the UI.

      Use cases
      2 users editing the same record at the same time

      • User A and User B editing the same record at the same time (not frequent) – users, orders, instances, holdings, items, requests
      • User A editing an item and User B creating a request for that item
      • User A editing and item and User B putting that item on course reserve at the same time
      • User A editing an invoice and User B trying to approve the same invoice at the same time
      • User A editing an item and User B deleting the item before User A's edits are saved (see UIIN-730)
      • User A editing a request and User B cancelling the request before User A's edits are saved (see UIREQ-344)
      • When attempting to update holdings and their items concurrently the holdings updates will ever so often interfere with the item updates, effectively nullifying the latter (see MODINVSTOR-516). This particular item is being addressed via RMB-388.

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                jakub Jakub Skoczen
                charlotte Charlotte Whitt
                Votes:
                0 Vote for this issue
                Watchers:
                22 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases