Uploaded image for project: 'mod-source-record-manager'
  1. mod-source-record-manager
  2. MODSOURMAN-791

Reduce Conversion of Parsed Content Into A MARC4J Record

    XMLWordPrintable

Details

    • Folijet Sprint 139
    • 3
    • Folijet
    • Morning Glory R2 2022

    Description

      In the AdditionalFieldsUtil class, there are numerous methods used to modify MARC records. Each of these methods coverts the parsed content represented as a JSON string into a MARC4J reader to generate a MARC4J record. This conversion is compute intensive.

      Cache MARC4J records with the originating parsed content string as its key. This cache process is not perfect but works well since any change, such as updating a subfield, generate a brand new parsed content string. Using the whole parsed content string as a key reduces the possibility of the cache returning stale data. The immutability of the String class in Java is relied upon to make this work.

      The cache is limited to 25 items for now. That is only 25 MARC4J records will be cached. New MARC4J records will evict old MARC4J records to limit memory overruns. The life span of a parsed content string within SRM is short. Caching this way should reduce computation by over 50%.

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                olamshin Olamide Kolawole
                olamshin Olamide Kolawole
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases