From 546ffed24fe3e778ee153d905d85104124888c80 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 11 Dec 2024 12:48:50 -0500 Subject: [PATCH] fix: separate out removals vs. additions in actor assertion in order to hopefully resolve #12959 --- src/activitypub/actors.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/activitypub/actors.js b/src/activitypub/actors.js index b6288e4a11..0d5edfa584 100644 --- a/src/activitypub/actors.js +++ b/src/activitypub/actors.js @@ -190,12 +190,17 @@ Actors.assert = async (ids, options = {}) => { return memo; }, { searchRemove: [], searchAdd: [], handleRemove: [], handleAdd: {} }); + // Removals + await Promise.all([ + db.sortedSetRemoveBulk(queries.searchRemove), + db.deleteObjectFields('handle:uid', queries.handleRemove), + ]); + + // Additions await Promise.all([ db.setObjectBulk(bulkSet), db.sortedSetAdd('usersRemote:lastCrawled', profiles.map(() => now), profiles.map(p => p.uid)), - db.sortedSetRemoveBulk(queries.searchRemove), db.sortedSetAddBulk(queries.searchAdd), - db.deleteObjectFields('handle:uid', queries.handleRemove), db.setObject('handle:uid', queries.handleAdd), ]);