Overview
While reviewing the System Preferences menu, you made changes within the database directly. When you attempt to use the refresh button or reload the System Preferences menu to pull the changes, the data remains the same and shows the old values. Your expectation is that the data should be loaded again from the database, similarly as it was working in the previous version of the UI (implemented with Adobe Flex).
Information
This interaction of the database changes and the refresh button is the expected behavior within Service Gateway. When changes have been made directly within the database, they do not trigger the server's cache to be updated, and the refresh button does not collect the most up-to-date information.
To improve performance, Service Gateway uses a 3rd-party tool called Ehcache to cache information in memory that is read more frequently than it is updated, such as the System Preferences. This cache is updated in the following situations:
- When cacheable information like a system preference is queried, the system checks the cache first for the data. If it is not there, the cache gets the data from the database to add it to the cache and then returns that data.
- If another Service Gateway user changes that data, it causes the cache to go to the database again the next time someone wants to access that data.
The refresh buttons within Service Gateway's UI are not intended to force the data displayed within the UI to be refreshed from the database. Instead, they cause a check against the server cache to undo any pending changes made in the UI that have not been saved yet or collect the most recent changes if another user made changes via the UI and saved them.