Details
-
Story
-
Status: Closed (View Workflow)
-
P3
-
Resolution: Done
-
None
-
-
Folijet Sprint 129, Folijet Sprint 130
-
8
-
Folijet
-
Lotus R1 2022
Description
Currently instance id equals to record id, that adds some confusion. Need to implement approach to generate different UUIDs for these entities and at the same to prevent duplicates processing.
The approach has been designed in scope of spike: MODDATAIMP-500 and needs the creation of new table for deduplication purposes. The working flow described in the diagrams below. Currently mod-inventory does not have a database schema and code to work with it, so need to add these capabilities in scope of current story.
Diagram of instance id generation logic:
Class diagram:
What needs to be done:
1. Add/enable possibility for database schema changes
2. Add db schema change, that includes creating of new mod-inventory database schema and new table records_instances
3. Add new InstanceIdStorageService class and DAO layer for it, that calls newly added table records_instances
4. Modify CreateInstanceHandler to call new InstanceIdStorageService for checking UUIDs.
5. Cover with tests.
TestRail: Results
Attachments
Issue Links
- defines
-
UXPROD-3210 NFR: R1 2022 Lotus Data import Stability/Reliability work
-
- Closed
-
- has to be done before
-
MODINV-589 Implement deduplication for Holdings
-
- Closed
-
-
MODINV-590 Implement deduplication for Items
-
- Closed
-
-
MODINV-591 Implement deduplication for Authorities
-
- Closed
-
-
MODINV-603 Remove Kafka cache by handling Constraint Violation Exceptions for DataImportKafkaHandler
-
- Closed
-
- relates to
-
MODDATAIMP-500 SPIKE: Design approach for assigning UUIDs for entities created by DI
-
- Closed
-
-
MODDATAIMP-588 Spike: Investigate possibility of removing Kafka cache
-
- Closed
-
-
MODINV-460 SPIKE: Analyze possibilities to implement some constraints on the persistence level for blocking duplicate "holdings" and "items".
-
- Closed
-
-
MODINV-589 Implement deduplication for Holdings
-
- Closed
-
-
MODINV-778 Type Mismatch Error on record_id column
-
- Closed
-