mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-20 17:32:15 +03:00
b5fb439ae7
refs https://github.com/TryGhost/Team/issues/754
closes https://github.com/TryGhost/Ghost/issues/13088
refs a7dec233ba
- The corrupted data recovery mechanism for notifications is needed to be able to fix the data stored in `settings` table under `notifications` key. There was no validation in place, which has caused some instances to store data in unreadable/writable state
- The recovery mechanism is in place to avoid adding migrations every time we spot a broken notifications data (will be fixed by validation soon).
- The notification data is also NOT critical but valuable for system functioning properly, that's the reason why the data "healing" happens in less secure "fire-and-forget" way
- The referenced commit is where the "bigger" problem that was causing the data corruption was at. This change is a "cleanup" after what has happened there - storing Ghost error object in `value` for `notifications` key
13 lines
377 B
JavaScript
13 lines
377 B
JavaScript
const settingsCache = require('../settings/cache');
|
|
const i18n = require('../../../shared/i18n');
|
|
const ghostVersion = require('@tryghost/version');
|
|
const Notifications = require('./notifications');
|
|
const models = require('../../models');
|
|
|
|
module.exports.notifications = new Notifications({
|
|
settingsCache,
|
|
i18n,
|
|
ghostVersion,
|
|
SettingsModel: models.Settings
|
|
});
|