perf: WIP #10449, allow array of pids for posts.purge (#10465)

* perf: WIP #10449, allow array of pids for posts.purge

* refactor: deletePostDiffs

* perf: deletePostFromReplies/deletePostFromGroups

* refactor: upload

* refactor: deleteFromCategoryRecentPosts

deleteFromUsersBookmarks
deleteFromUsersVotes

* feat: closes #10468, add incrObjectFieldByBulk

* refactor: allow nids for notifications.rescind

* refactor: allow uids array for user.updatePostCount

* refactor: rewrite deleteFromTopicUserNotification to work with an array

* feat: deprecate action:post.purge as well

* lint: add missing comma
This commit is contained in:
Barış Soner Uşaklı
2022-04-07 14:06:25 -04:00
committed by GitHub
parent a2ebf53b60
commit 767973717b
10 changed files with 250 additions and 101 deletions

View File

@@ -272,10 +272,11 @@ Notifications.pushGroups = async function (notification, groupNames) {
await Notifications.push(notification, groupMembers);
};
Notifications.rescind = async function (nid) {
Notifications.rescind = async function (nids) {
nids = Array.isArray(nids) ? nids : [nids];
await Promise.all([
db.sortedSetRemove('notifications', nid),
db.delete(`notifications:${nid}`),
db.sortedSetRemove('notifications', nids),
db.deleteAll(nids.map(nid => `notifications:${nid}`)),
]);
};