Context
Tracking
Type | Ticket | Module |
---|---|---|
Module ticket | mod-audit | |
Arch ticket |
Technical details
The circulation log data is persisted in jsonb
format in FOLIO database and itemBarcode
field is part of the nested array items
as each circulation log record can contain multiple items. No indexes are present for the table.
Problem Statement
Circulation log search by item barcode slow when table contains millions of rows.
Stakeholders
Options
Option A - define retention policy (use archive or table partitioning)
Option B - add gin index for nested items → itemBarcode field
Option C - add index for creation date and limit search date range
Questions
# | Question | Answer | Status |
---|---|---|---|
1 | How many records per year clients produce? | OPEN | |
2 | Do clients have any retention policy or regulations on circulation records? | OPEN |
Rationale
Option A depends on client needs.
Option B should be implemented in any case.
Option C requires minimal effort but have tradeoffs. Can be implemented as quick fix.