Compare commits
2 Commits
2199bb3f39
...
cafa6476ca
| Author | SHA1 | Date | |
|---|---|---|---|
| cafa6476ca | |||
| 3007150aeb |
4
package-lock.json
generated
4
package-lock.json
generated
@@ -1,11 +1,11 @@
|
|||||||
{
|
{
|
||||||
"name": "traxxx-web",
|
"name": "traxxx-web",
|
||||||
"version": "0.52.0",
|
"version": "0.52.1",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"version": "0.52.0",
|
"version": "0.52.1",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@brillout/json-serializer": "^0.5.25",
|
"@brillout/json-serializer": "^0.5.25",
|
||||||
"@dicebear/collection": "7.0.5",
|
"@dicebear/collection": "7.0.5",
|
||||||
|
|||||||
@@ -87,7 +87,7 @@
|
|||||||
"overrides": {
|
"overrides": {
|
||||||
"vite": "$vite"
|
"vite": "$vite"
|
||||||
},
|
},
|
||||||
"version": "0.52.0",
|
"version": "0.52.1",
|
||||||
"imports": {
|
"imports": {
|
||||||
"#/*": "./*.js"
|
"#/*": "./*.js"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -436,20 +436,20 @@ async function alertSceneReleases() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function purgeExpiredAlerts() {
|
async function purgeExpiredAlerts() {
|
||||||
await knex('notifications')
|
const purgedNotifications = await knex('notifications')
|
||||||
.where((builder) => {
|
.where((builder) => {
|
||||||
builder
|
builder
|
||||||
.where('seen', true)
|
.where('seen', true)
|
||||||
.where((seenBuilder) => {
|
.where((seenBuilder) => {
|
||||||
seenBuilder
|
seenBuilder
|
||||||
.whereNull('seen_at') // marked seen before seen_at was added
|
.whereNull('seen_at') // marked seen before seen_at was added
|
||||||
.orWhereRaw('seen_at < now() - interval \'? days\'', [config.alerts.seenExpiry]);
|
.orWhereRaw('seen_at < now() - (?::int * interval \'1 day\')', [config.alerts.seenExpiry]); // '? day' would be interpreted literally
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.orWhereRaw('created_at < now() - interval \'? days\'', [config.alerts.finalExpiry]) // don't accumulate notifications indefinitely
|
.orWhereRaw('created_at < now() - (?::int * interval \'1 day\')', [config.alerts.finalExpiry]) // don't accumulate notifications indefinitely
|
||||||
.delete();
|
.delete();
|
||||||
|
|
||||||
await knex('alerts')
|
const purgedAlerts = await knex('alerts')
|
||||||
.where('is_expired', true)
|
.where('is_expired', true)
|
||||||
.whereNotExists(
|
.whereNotExists(
|
||||||
knex('notifications')
|
knex('notifications')
|
||||||
@@ -458,6 +458,8 @@ async function purgeExpiredAlerts() {
|
|||||||
.delete();
|
.delete();
|
||||||
|
|
||||||
await knex.schema.refreshMaterializedView('alerts_users_scenes');
|
await knex.schema.refreshMaterializedView('alerts_users_scenes');
|
||||||
|
|
||||||
|
logger.info(`Purged ${purgedNotifications} notifications and ${purgedAlerts} alerts`);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function initAlertCron() {
|
export function initAlertCron() {
|
||||||
|
|||||||
Reference in New Issue
Block a user