Fixed old feed deleting

main
Štěpán Škorpil 2022-12-27 22:11:19 +01:00
rodzic 425abd5af0
commit a8e6dbdb9d
3 zmienionych plików z 17 dodań i 3 usunięć

Wyświetl plik

@ -30,6 +30,7 @@ export const createFeed = async (
displayName: feedData.displayName,
locked: feedData.locked,
createdAt: feedData.createdAt.getTime(),
refreshedAt: new Date().getTime(),
foundAt: new Date().getTime(),
fields: feedData.fields.map((field) => {
return { name: field.name, value: field.value }

Wyświetl plik

@ -7,13 +7,26 @@ export const deleteOldFeeds = async (
node: Node
): Promise<number> => {
await elastic.indices.refresh({ index: feedIndex })
// delete by domain and (refreshedAt < node.refreshAttepmtedAt or refreshedAt=null)
const result = await elastic.deleteByQuery({
index: feedIndex,
query: {
bool: {
must: [
{ match: { domain: node.domain } },
{ range: { refreshedAt: { lt: node.refreshAttemptedAt } } }
{
bool: {
should: [
{ range: { refreshedAt: { lt: node.refreshAttemptedAt } } },
{
bool: {
must_not: { exists: { field: 'refreshedAt' } }
}
}
],
minimum_should_match: 1
}
}
]
}
}

Wyświetl plik

@ -20,11 +20,11 @@ export const updateFeed = async (
followersCount: feedData.followersCount,
followingCount: feedData.followingCount,
statusesCount: feedData.statusesCount,
lastStatusAt: feedData.lastStatusAt,
lastStatusAt: feedData.lastStatusAt?.getTime(),
description: feedData.description,
displayName: feedData.displayName,
locked: feedData.locked,
createdAt: feedData.createdAt,
createdAt: feedData.createdAt.getTime(),
refreshedAt: new Date().getTime(),
type: feedData.type,
fields: feedData.fields.map((field) => {