Add duration field to circulation events #27
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR adds duration field to circulation events (database, OpenSearch, S3). It is used to store loan duration times (in seconds) to loan revoke events.
This adds new duration field to circulationevent model and OpenSearch event index. OpenSearch mapping change is a small addition and it is done in lightweight ad-hoc manner as currently we don't have flow for migrating from mapping version to another.
Loan durations cannot be added retroactively to the existing events since we didn't have this data earlier.
Motivation and Context
Loan duration enables filtering out short loans from analytics (https://jira.lingsoft.fi/browse/SIMPLYE-181). This implementation will be its own PR.
How Has This Been Tested?
I tested the local analytics events and OpenSearch events with Palace Bookshelf open access books and revoke events have correct durations in seconds stored in them.
NOTE: S3 events have not been tested. Currently they are not used in E-kirjasto.