Important Upgrade Considerations
This section outlines all changes that require special consideration for customers in production. Configuration changes may be needed to prevent operational interruptions. See checklist for guidelines on how to fill this out.
Changes and Required Actions
Functional Area | Change or Addition | Considerations | Action timing, Action required | Comments | Contact person, Related JIRAs |
---|---|---|---|---|---|
Affected app or module | What has been changed or added that should be noted for this release | What challenges may arise related to this change or addition | When can the action be taken (before, during or after upgrade)? If applicable, detail what action(s) must be taken here | Name of user leaving comment: comment on what you encountered or ask a question @mention Contact person | User name of person that can provide additional detail. Include issue link for bug fix, story or feature that applies |
Requests | Title level requests are available with Morning Glory through Settings > Circulation > Title level requests Libraries must opt in to use title level requests; item level requests functionality continues to be available. | Requests on boundwith and multivolume materials should be placed as item level requests. Page requests cannot be moved above hold requests or reordered within the queue. | Data migration included in Lotus (and update in Lotus HF1) must be completed before Title level requests can be enabled. | In Request details>Request information>Position in queue - # (# requests) means # position in request (# other open not yet filled reorderable requests). Page requests are not counted in (# other open not yet filled reorderable requests) since they cannot be reordered. | |
Fees/Fines | The "New fee/fine" page has now been replaced with a modal, in order to match "Pay fee/fine", "Waive fee/fine", etc. | ||||
Fees/Fines | The fee/fine pages are now using the "Effective call number string" rather than just the "Call number". | ||||
Requests | A request containing a hardcoded UUID (because an item or instance was discovered to no longer be present during data migration in Lotus) has an updated Action menu only containing Cancel, and disabled links to item and instance records. | ||||
Patron Notices - email | Addition: In the very last step of the process of sending an email, IF an error happened somewhere in the process, that stopped sending the email, THEN FOLIO will retry sending the email. This is a tenant-wide configuration and is managed by mod-email. | See the ticket for the numbers of retry attempts and max age eligible for retry, and how to configure if you DON'T want to try resending failed emails. | |||
Search | Inventory search supports now contributors browse. Changes to the Authority search were implemented. | mod-search indices will need to recreate for both instance and authority as described here | During the upgrade process | ||
Search | Must re-index search when applying Hotfix #1 For upgrading mod-search-1.7.5 to a higher version - reindex is required after update (for a change introduced in mod-search-1.7.6) | ||||
mod-inventory-storage | To load MARC Holdings during data import flow, we should use pre-defined MARC Holdings source (which is created in the reference data with pre-defined id = 036ee84a-6afd-4c3c-9ad3-4a12ab875f59) | Anyone who plans to import and store MARC holdings. | Before upgrade. Reference data should be added during an upgrade (by default) | ||
Export eholdings (package and title+package details) | Export eholdings (package and title+package details) will not be included in Morning Glory release until performance issues are resolved. (UXPROD-177) | ||||
OAI-PMH (mod-oai-pmh) | mod-oai-pmh does not support multiple concurrent harvests of full library collection. Recommended edge and mod-oai-pmh module settings that prevents harvests end prematurely on a larger data sets: edge-oai-pmh memory settings: -Xmx952m mod-oai-pmh ENV recommendation: { "name": "DB_QUERYTIMEOUT", "value": "2700000" }, | Multiple concurrent harvests of full library collection were never supported. Results of the performance tests when running multiple full harvests can be found here. mod oai-pmh provides APIs for monitoring the harvesting process as documented in the READ.ME file. Additional information: OAI-PMH Best Practices | |||
Invoices and Invoice settings | The management of batch voucher export has been move out of settings to a full screen view in the invoice app UI. The details of batch export are still found in system settings. | User who work with batch voucher export should be updated on where they can access it. | Access batch voucher export from the action menu in the invoice app. | Dennis Bridges | |
MARC Authority records | Mapping rules were changed. It's required to update default mapping rules in the database. | Only applies to a library that has MARC authority records in Lotus environment | Apply after mod-source-record-manager upgrade. Please do the following actions.
| ||
Data export | New default job-profile for authorities was added. It requires to load reference for module. | Use MARC authority records | mod-data-export Requires to load reference for module.
| Shans Kaluhin | |
EDIFACT order export | Hourly and monthly export scheduling will be disabled. | If you already configured these for certain organizations you may notice sporadic export performance. User will need to rely on Daily or Weekly options to use the scheduled export. | Export schedule settings can be updated before or after the organization has upgraded to morning glory. The side effects are that the export may not run at the desired time when using hourly or monthly schedules. | These option will be available again once the issues with them have been resolved. We are targeting Nolana for the release of these updates. | |
edge-sip2 | FOLIO user (used for connections from SC) requires permission search.instances.collection.get | New permission can be added to user before or after upgrade - but be done prior to operating SC (after upgrade) | |||
Data import profiles (non-default) upgrade issue | Resolved with MG Hotfix released: https://github.com/folio-org/mod-data-import-converter-storage/releases/tag/v1.14.2 OR manual run script Link to scripts file for v1.4.2: Instructions for running manually: File contains 8 scripts in total (1 for | ||||
Data Import | Reminder when upgrading | When upgrading from one flower release to the next, confirm that the deployed modules are of compatible modules and are in the same release. If incompatible modules versions, Kafka messages consumed by older versions of modules can cause problems. When entity schema changes in such a way it usually leads to an API version bump and if module that requires a specific version of the API deployed and the API is not there - it results in an error. Unfortunately, there is no such mechanism for changes in Kafka message payload - topics that are used are the same, therefore a consumer in an older module version will consume the messages. | |||
Data Import | Settings and Configuration | Refer to Settings and Configuration page for details on modules involved in Data Import. Adjust if needed to optimise performance. | |||
GOBI | Invalid mappings have been removed. Essentially mappings for fields that are no longer shown in the UI and have been depricated. | Any mappings you may have that include reference to removed fields will produce errors and cause the system to revert to the standard mapping configuration. | Dennis Bridges | ||
Bulk Edit | Additional environment variables to back-end module deployment | This module uses separate storage of temporary (local) files for its work. These files are necessary for processing bulk-edit business flows. Any S3-compatible storage (AWS S3, Minio Server) supported by the Minio Client can be used as such storage. Thus, in addition to the AWS configuration of the permanent storage, one needs to configure the environment settings for temporary files storage | For mod-data-export-worker, add LOCAL environment variables discussed here: https://github.com/folio-org/mod-data-export-worker#environment-variables otherwise Bulk Edit file uploads will fail in Folio. | ||
Data Import | Provided script to clean up Job profiles in case linked Mapping or Action profiles were edited | Editing Mapping or Action profiles already linked to a Job profile result in increased profile size (unnecessary elements are stored), which may lead to slow performance of mod-data-import-converter-storage, Kafka errors during DI process and excessive memory consumption by mod-source-record-manager | Follow the instructions at point 11 - Scripts for Inventory, Source Record Storage, and Data Import Cleanup |
New Apps
Bulk edit. Morning Glory functionality covers:
- Bulk edit - in app approach:
- Inventory items locations (temporary and permanent)
- Inventory item statuses
- Bulk edit - csv approach:
- Users records
The Bulk edit app requires following permissions to edit inventory items:
- Bulk Edit: In app - Edit
- Bulk Edit: In app - View
The Bulk edit app requires following permissions to edit user records:
- Bulk Edit: (CSV) Edit
- Bulk Edit: (CSV) View
Known limitations:
- Bulk edit of user records - up to 2500 records at one time.
- Bulk edit of item records - up to 10 000 records at one time
Module configuration:
For stable module operations the following mod-data-export-worker configuration is required: Java args -XX:MetaspaceSize=384m -XX:MaxMetaspaceSize=512m -Xmx2048m, AWS container: memory - 3072, memory (soft limit) - 2600, cpu - 1024.
Removed Apps
Permissions Updates
App | New Permissions | Deprecated Permissions | Product Owner |
---|---|---|---|
Data Import | Data import: Can upload files, import, and view logs (renamed from Data import: All permissions) Data import: Can delete import logs Data import: Can view only Settings (Data import): Can view only | Ann-Marie Breaux | |
eUsage | General: Settings, All, Read-only:
| Annika Schröer | |
Invoices | Invoice: Export search results Invoice: Voucher export | None | |
Finance | Finance: Export finance records | None | |
Receiving | Receiving: Export search results | None | |
Orders | Orders: Can create new Orders and Order lines Orders: Can delete Orders and Order lines Orders: Can edit Orders and Order lines Orders: Can view Orders and Order lines Orders: Cancel order lines Orders: Cancel purchase orders | Orders: Can create new Order lines Orders: Can delete Order lines Orders: Can edit Order lines Orders: Can view Order lines Orders: Can create new Orders Orders: Can delete Orders Orders: Can edit Orders Orders: Can view Orders Orders: Edit orders should be marked as deprecated but this label will not appear in the UI until Nolana. | |
Requests, title level requests | Settings (Circulation): Title request level edit | ||
Inventory / quickMARC | quickMARC: View MARC bibliographic record quickMARC: View MARC holdings record | Khalilah Gambrell | |
Inventory | Inventory: Create order from instance | None | |
MARC authority | MARC Authority: Delete MARC authority record | Khalilah Gambrell | |
Known Issues
General
App | Known issue | Workaround | JIRA issue | Product Owner |
---|---|---|---|---|
Settings > Inventory > Statistical codes | Handle delete of statistical code associated with instance, holdings, or item in a properly manner. | The approach we took for this issue MODINVSTOR-829 should be similar to what needs to be done for the other related issues, addressed in UXPROD-1889 | ||
Requests | When duplicating a request, the original pickup location selection is not preserved. | Re-select the pickup location. | ||
Requests | In the Request details pane, the publication date may sometimes appear as "-", even though a publication date is listed in it's Inventory record. This happens when there is a character preceding the date, for example, c1905 or [1960]. | Check the item or inventory record for the publication date. Correcting this has been added to a feature for future enhancements. | UIREQ-801 | Stephanie Buck |
Data import | Ann-Marie Breaux | |||
MARC authority | First deletion of a MARC authority record may be delayed but the record is deleted. | No workaround | ||
Bulk edit | When triggering the bulk edit of item records by submitting a list of holdings HRIDs, the reported number of the updated records might be incorrect. | No workaround | ||
Bulk edit | On larger data sets (~ 10 000 records) there is a significant delay on the screen showing the preview of proposed changes (Are you sure? form) | Wait until the form is populated and the Download preview button works | ||
Title Level Requests | Requests with the status Closed - pickup expired are causing queue positions to be absent from the queue. For example, if Request A was position 1, and it's status changes to Closed pickup expired, then Position 1 will be absent from the queue. This does not affect the functionality of the queue. | No workaround | ||
Title Level Requests | When placing a title level request and the Title look-up is used in the request form, the title information isn't loading consistently. | Use the Instance ID, or search for the title again. It usually loads properly the second time. | Stephanie Buck | |
Title level requests |
| No known workarounds | CIRC-1683, CIRC-1684, CIRC-1693 | Stephanie Buck |
Item Limits | When a patron reaches the Loan Policy Item Limit at checkout, the error message that appears in the "Item not checked out" pop-up always indicates that the limit is "1", when it could be another number. Item limits work, but the message is incorrect. | Check the Loan Policy to see what the Item Limit is. | Holly Mistlebauer | |
Requests | Morning Glory includes the implementation of shortcut keys for the request policy, but inadvertently left out adding the UI caret and shortcut key menu to the app. This will be fixed in a future release. | Reference docs.folio.org documentation for the shortcut key list as needed - https://docs.folio.org/docs/platform-essentials/keyboard-shortcuts/keyboardshortcuts/ | ||
Inventory/Single Record Import | When importing a Single record using the Import button in Inventory's action menu, then an instance is created. But if the user then use the 'back' button in the browser, a duplicate import of the same record is created | Do not use the 'back' button. | Charlotte Whitt | |
Circulation log | An item referred in the Circulation log is allowed to be deleted without any warning. But in the Circulation log, when clicking on the referred item (which is a link) then it throws an ugly error. New work has been identified: UXPROD-3738, and the architect has written up a technical spec document: UXPROD-3738 Circulation log update: deleted item records | For now accept the ugly error. This will be fixed when the work on UXPROD-3738 can be prioritized by the development team Vega. | ||
Users | Invalid date values can cause the user expiration timer to break and freeze the FOLIO tenant. | The Users app can allow saving of records with invalid dates, like a birthdate of 0000-00-01. The User UI context is fixed in the Nolana release; there are larger platform issues that also need to be resolved, being tracked in RMB-943. If these dates are present, the user expiration timer will not be able to process that user record. The timer will continue to attempt to process the record and eventually the entire FOLIO tenant will freeze. If you are upgrading an existing FOLIO tenant to Morning Glory, the recommendation is prior to migration to check for these existing date values and resolve them if they are present. Suggestion from Index Data: "You can find the user records in the database with a query something like this: SELECT jsonb FROM diku_mod_users.users WHERE jsonb->'personal'->>'dateOfBirth' !~ '^[0-9]{4}'; ....You can also control the timer that was hanging up the system using the timer management API: https://github.com/folio-org/okapi/blob/master/doc/guide.md#timer-management. | ||
Agreements | The "Is perpetual" property for an agreement cannot be set or edited | If the "Is perpetual" is already set for an agreement, this will remain set, but the value will not be displayed in the Edit form (it will display in the View correctly), and in the Edit (or Create) form for an agreement there are no options in the dropdown for the "Is perpetual" property | Owen Stephens | |
Agreements | Some of the non-english translations for labels in the UI related to "Supplementary properties" are incorrect | There is no work around for this issue at this time | ||
Licenses | Some of the non-english translations for labels in the UI related to "Terms" are incorrect | There is no work around for this issue at this time | ||
Finance, orders, invoices | When modules attempt to update transactions in finance app they may receive an error regarding a null version. Eg. { "errors": [ { "message": "{\n \"errors\" : [ {\n \"message\" : \"Conflict when updating a record in table transaction: Cannot update record e52816e8-c4c9-4648-b65d-XXXXXXXXX because it has been changed (optimistic locking): Stored _version is <NULL>, _version of request is 1\",\n \"code\" : \"conflict\",\n \"parameters\" : [ ]\n } ],\n \"total_records\" : 1\n}", "code": "genericError", "parameters": [] } ], "total_records": 1 } | Optimistic locking should remain disabled for the Morning Glory release. Instructions regarding exactly what to disable can be found here under "Before Running" https://wiki.folio.org/x/tRm-BQ. This was discovered while preparing a script to fix issued cause by past rollovers. | Dennis Bridges | |
mod-search | boundWith flag is not updated in mod-search | For mod-search either remove KAFKA_EVENTS_CONSUMER_PATTERN env variable so that the default ($ENV\.)(.*\.)inventory\.(instance|holdings-record|item|bound-with) is used, or add bound-with to your custom pattern. | ||
Purging a tenant | After disabling modules with purge option for one tenant other tenants get this error: " ERROR: function f_unaccent(text) does not exist (42883) "This affectes only modules where environment variable DB_MAXSHAREDPOOLSIZE is set. | After disabling modules with purge option restart all modules where environment variable DB_MAXSHAREDPOOLSIZE is set. | Julian Ladisch |
Additional known issues
Notes on functionality
- Optimistic locking has been enabled for inventory instances, holdings records, and items (Optimistic locking proposal, UXPROD-1752, MODINVSTOR-845).
- Optimistic locking has been enabled for MARC authority app and quickMARC
PO Release Presentations
Presentation | Presentation date | Presenter | SIG Meeting (link) | Notes |
---|---|---|---|---|
Inventory | 2022.07.28 | Charlotte Whitt | MM-SIG | View demo and slide deck |
Cataloging | 2022.08.11 | Khalilah Gambrell | View slide 8 | |
Acquisitions | 2022.08.19 | Dennis Bridges | Includes gifs. | |
Data Import | 2022.08.04 | Ann-Marie Breaux | MM-SIG | Demo at SIG meeting, plus slide deck |
ERM: Agreements and Licenses | 2022.08.10 | ERM-SIG: | View slide 2, and recording from 08:50-24:50 | |
Bulk edit | 2022.08.31 | Magda Zacharska | WOLFcon presentation |
Post-Release Hotfixes
Hot fix release #1 - RELEASED AT DECEMBER 20
Tickets list
Modules list
Project | Priority | |||
---|---|---|---|---|
![]() |
T: | |||
Bug Fest | 1 | 0 | 0 | 1 |
ERM Platform | 1 | 4 | 2 | 7 |
FOLIO | 1 | 0 | 0 | 1 |
Okapi | 1 | 0 | 0 | 1 |
mod-authtoken | 0 | 2 | 0 | 2 |
mod-circulation | 1 | 3 | 0 | 4 |
mod-data-export | 0 | 1 | 0 | 1 |
mod-data-export-worker | 0 | 1 | 0 | 1 |
mod-data-import | 0 | 1 | 0 | 1 |
mod-di-converter-storage | 1 | 2 | 0 | 3 |
mod-erm-usage | 0 | 1 | 0 | 1 |
mod-kb-ebsco-java | 0 | 3 | 0 | 3 |
mod-orders | 1 | 0 | 0 | 1 |
mod-patron-blocks | 0 | 1 | 1 | 2 |
mod-search | 0 | 3 | 0 | 3 |
mod-source-record-manager | 0 | 1 | 0 | 1 |
stripes-components | 0 | 1 | 0 | 1 |
ui-bulk-edit | 0 | 2 | 0 | 2 |
ui-data-export | 0 | 1 | 0 | 1 |
ui-quick-marc | 0 | 1 | 0 | 1 |
Total Unique Issues: | 7 | 28 | 3 | 38 |
View in Jira
New Features
Nonfunctional Requirements (NFR) Features
Closed Bugs
All Closed Bugs and Stories
Remaining Open Bugs at Time of Release
Support Period
Morning Glory will be supported with critical security and bug fixes until Orchid (R1 2023) is released (around April 2023). At the Morning Glory release day the Kiwi release has reached end of life and is no longer supported. See FOLIO support policy.
3 Comments
Ingolf Kuss
Hi! For OAI-PMH (mod-oai-pmh) my current configuration is }, {
"name" : "DB_QUERYTIMEOUT",
"value" : "604800000"
}, {
"name" : "DB_MAXPOOLSIZE",
"value" : "20"
}
It is probably the default config because I cannot remember having ever changed it. What does the ENV recommendation
{ "name": "DB_QUERYTIMEOUT", "value": "2700000" }, mean ?
Is this a minimum value or do I need to spin down my higher value to this value in order to prevent harvests from ending prematurely ?
Magda Zacharska
Viachaslau Khandramai - could you please clarify the required settings for OAI-PMH?
Michelle Futornick
these permissions also seem to be new for Morning Glory, if so can we add to list above?
Inventory: Create order from instance
Receiving: Export search results