Periodic cache replication‌

Data stored in the cache can be updated periodically. The period is set using parameter updatePeriod. After each period, every DMZ server asks its inner server if there have been updates. Typically, a partial update is started then. If more time than the configured fullUpdatePeriod has passed, a full update is executed. If at the start of a partial update a restart of the inner server or its AuthenticationService is detected, a full update is executed instead. In a partial update, version numbers govern which data needs to be updated. For this purpose, it is first determined which partner IDs are affected and whether the change affects the record of the partner, the channels or the certificates. Therefore, the amount of data is minimal and the time taken to execute the update is rather small. This means that even periods of about one minute are possible. A period less than three seconds or negative values are ignored and the default value is used instead.

The message log (./logs/services/message.log) stores the time a partial update occurred.


... SYSTEM:AUTH:MSGAUTHSERVICE: starting partial update of local cache database for partnerIDs: []


If the ID list is empty, no data was copied and only version numbers have been updated.

If updatePeriod is 0, no update is executed during runtime. Not even a full update after the fullUpdatePeriod and also not after a restart of the inner server or if the current date has changed. The immediate update after a 'sync required' message from the inner server is also not executed. The DMZ cache will not be altered after the initial update on DMZ start.

If updatePeriod is set to a very large value, that period will never be reached in practice, but the immediate update after 'sync required' is executed if ignoreNotification is not set to "true". In this case, an update is executed only if the DMZ server sends requests to the inner server and relevant changes exist, possibly filtered by channel types according to section Restricted caching by channel types ("cachedChannelTypes")‌. If an update is started in this manner, a full update is executed if in the meantime the current date changed, the inner server has been restarted or the fullUpdatePeriod has been reached.

If fullUpdatePeriod is set to 0 (default value), full updates are only executed if updates are scheduled at all (see above) and if either the current date changed or the inner server has been restarted.

If fullUpdatePeriod has a very small positive value, e.g. 1, all updates are executed as a full update. This is not recommended. When those updates occur is governed by the rules described above, not by the setting of this parameter.