mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-03-16 22:21:51 +00:00
Reduce retention period of saved messages from 1 week to 5 days
Step 1 of a multi-step change to reduce the retention period to 1-3 days to save database space.
This commit is contained in:
parent
7b00dc8498
commit
f6e487d073
1 changed files with 12 additions and 12 deletions
|
@ -7,7 +7,7 @@ import moment from "moment-timezone";
|
||||||
|
|
||||||
const CLEANUP_INTERVAL = 5 * 60 * 1000;
|
const CLEANUP_INTERVAL = 5 * 60 * 1000;
|
||||||
|
|
||||||
const RETENTION_PERIOD = 7 * 24 * 60 * 60 * 1000; // 1 week
|
const RETENTION_PERIOD = 5 * 24 * 60 * 60 * 1000; // 5 days
|
||||||
|
|
||||||
export class GuildSavedMessages extends BaseRepository {
|
export class GuildSavedMessages extends BaseRepository {
|
||||||
private messages: Repository<SavedMessage>;
|
private messages: Repository<SavedMessage>;
|
||||||
|
@ -30,10 +30,10 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
const data: ISavedMessageData = {
|
const data: ISavedMessageData = {
|
||||||
author: {
|
author: {
|
||||||
username: msg.author.username,
|
username: msg.author.username,
|
||||||
discriminator: msg.author.discriminator
|
discriminator: msg.author.discriminator,
|
||||||
},
|
},
|
||||||
content: msg.content,
|
content: msg.content,
|
||||||
timestamp: msg.timestamp
|
timestamp: msg.timestamp,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (msg.attachments.length) data.attachments = msg.attachments;
|
if (msg.attachments.length) data.attachments = msg.attachments;
|
||||||
|
@ -53,7 +53,7 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
new Brackets(qb2 => {
|
new Brackets(qb2 => {
|
||||||
qb2.where("deleted_at IS NOT NULL");
|
qb2.where("deleted_at IS NOT NULL");
|
||||||
qb2.andWhere(`deleted_at <= (NOW() - INTERVAL ${CLEANUP_INTERVAL}000 MICROSECOND)`);
|
qb2.andWhere(`deleted_at <= (NOW() - INTERVAL ${CLEANUP_INTERVAL}000 MICROSECOND)`);
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
// Clear old messages
|
// Clear old messages
|
||||||
|
@ -61,9 +61,9 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
new Brackets(qb2 => {
|
new Brackets(qb2 => {
|
||||||
qb2.where("is_permanent = 0");
|
qb2.where("is_permanent = 0");
|
||||||
qb2.andWhere(`posted_at <= (NOW() - INTERVAL ${RETENTION_PERIOD}000 MICROSECOND)`);
|
qb2.andWhere(`posted_at <= (NOW() - INTERVAL ${RETENTION_PERIOD}000 MICROSECOND)`);
|
||||||
})
|
}),
|
||||||
);
|
);
|
||||||
})
|
}),
|
||||||
)
|
)
|
||||||
.delete()
|
.delete()
|
||||||
.execute();
|
.execute();
|
||||||
|
@ -160,7 +160,7 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
user_id: msg.author.id,
|
user_id: msg.author.id,
|
||||||
is_bot: msg.author.bot,
|
is_bot: msg.author.bot,
|
||||||
data: savedMessageData,
|
data: savedMessageData,
|
||||||
posted_at: postedAt
|
posted_at: postedAt,
|
||||||
};
|
};
|
||||||
|
|
||||||
return this.create({ ...data, ...overrides });
|
return this.create({ ...data, ...overrides });
|
||||||
|
@ -171,7 +171,7 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
.createQueryBuilder("messages")
|
.createQueryBuilder("messages")
|
||||||
.update()
|
.update()
|
||||||
.set({
|
.set({
|
||||||
deleted_at: () => "NOW(3)"
|
deleted_at: () => "NOW(3)",
|
||||||
})
|
})
|
||||||
.where("guild_id = :guild_id", { guild_id: this.guildId })
|
.where("guild_id = :guild_id", { guild_id: this.guildId })
|
||||||
.andWhere("id = :id", { id })
|
.andWhere("id = :id", { id })
|
||||||
|
@ -221,8 +221,8 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
await this.messages.update(
|
await this.messages.update(
|
||||||
{ id },
|
{ id },
|
||||||
{
|
{
|
||||||
data: newData
|
data: newData,
|
||||||
}
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
this.events.emit("update", [newMessage, oldMessage]);
|
this.events.emit("update", [newMessage, oldMessage]);
|
||||||
|
@ -240,8 +240,8 @@ export class GuildSavedMessages extends BaseRepository {
|
||||||
await this.messages.update(
|
await this.messages.update(
|
||||||
{ id },
|
{ id },
|
||||||
{
|
{
|
||||||
is_permanent: true
|
is_permanent: true,
|
||||||
}
|
},
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
this.toBePermanent.add(id);
|
this.toBePermanent.add(id);
|
||||||
|
|
Loading…
Add table
Reference in a new issue