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

Folijet support work for Inventory Optimistic Locking (Data Import and SRS)

    XMLWordPrintable

Details

    • Lotus R1 2022
    • Small < 3 days
    • Folijet
    • 112
    • R1
    • R1

    Description

      NOTE: This feature assesses how much impact the Inventory Optimistic Locking work has on Data Import. If any UI changes are needed (for the Data Import log or error messages in the UI), then a follow-on feature for Lotus will be added

      Current situation or problem: Inventory is implementing Optimistic locking in Kiwi. Folijet needs to review and determine how Data Import and SRS may be affected. There are already conflicts when 2 processes, or a person and a process are acting on the same record at the same time. Currently, one set of changes is discarded silently, with no error messages or UI indication. UXPROD-3058 lays out more details so that apps can return messages indicating when record edit conflicts occur. Data Import and SRS will need to react to those messages when the conflict (one of the simultaneous edits) is caused by Data Import.

      FOLIO-wide technical proposal: https://wiki.folio.org/display/DD/Optimistic+locking+proposal
      PO doc on detecting and resolving conflicts: https://wiki.folio.org/display/COMMUNITY/Optimistic+Locking+-++Detecting+and+Resolving+Conflicts+Requirements

      In scope

      • Any Data Import or SRS activity that causes changes to any Inventory record (Instance, Holdings, Item) at the same time as another automated process
      • Any Data Import or SRS activity that causes changes to any Inventory record (Instance, Holdings, Item) at the same time as a user editing manually in the Inventory app
      • Any Data Import UI pop-ups and handling user response, if necessary
      • Any Data Import UI log messages or details to reflect conflicts or resolution of those conflicts

      Out of scope

      • 2 users manually editing the same record in Inventory at the same time
      • 2 users manually editing the same record in quickMarc at the same time

      Use case(s)

      • Data Import is trying to update an instance, holdings, or item at the same time that a user is manually updating the same record
      • Data Import is trying to create a holdings or item on an instance that a user is manually updating at the same time
      • Data Import is trying to create an item related to a holdings that a user is manually updating at the same time
      • Data Import is updating an instance, holdings, or item at the same time that another automated process is updating it (e.g. circulation, aged to lost, another Data Import job)
      • SRS MARC Bib is updated by a Data Import job at the same time that a user is manually updating the same record in quickMARC (or leaves the record open in Edit mode on their screen for an extended period of time)
      • SRS MARC Bib is updated by 2 Data Import jobs running at the same time
      • Would there be use cases where OL would affect matching? (if trying to match from static or from incoming record to Instance, Holdings, or Item value?)
      • Is there a separate implementation that DI will need to do in case an SRS MARC is being acted upon by import B or by QM at the same as import A?

      Possible use cases (validate with Kate and Ivan; maybe consolidate with above)

      • Cannot create holdings because instance was in use
      • Cannot create item because instance was in use
      • Cannot create item because holdings was in use
      • Cannot update instance because instance was in use
      • Cannot update holdings because holdings was in use
      • Cannot update holdings because instance was in use
      • Cannot update item because item was in use
      • Cannot update item because holdings was in use
      • Cannot update item because instance was in use
      • Would there be use cases where OL would affect matching? (if trying to match from static or from incoming record to Instance, Holdings, or Item value?)
      • Is there a separate implementation that DI will need to do in case an SRS MARC is being acted upon by import B or by QM at the same as import A?

      Proposed solution/stories

      Links to additional info

      Questions

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                abreaux Ann-Marie Breaux
                abreaux Ann-Marie Breaux
                Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases