mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 14:47:53 +01:00
Database Access optimisations (#14544)
* Optimize database access during spell casting * load less data when casting spells * Begin migrating update calls to updateOne and updateMany * Only update user objects that don’t have notification yet * fix test * fix spy * Don’t unnecessarily update user when requesting invalid guild * fix sort order for middlewares to not load user twice every request * fix tests * fix integration test * fix skill usage not always deducting mp * addtest case for blessing spell * fix healAll * fix lint * Fix error for when some spells are used outside of party * Add check to not run bulk spells in web client * fix(tags): change const to let --------- Co-authored-by: SabreCat <sabe@habitica.com>
This commit is contained in:
@@ -392,6 +392,13 @@ schema.pre('update', function preUpdateUser () {
|
||||
this.update({}, { $inc: { _v: 1 } });
|
||||
});
|
||||
|
||||
schema.pre('updateOne', function preUpdateUser () {
|
||||
this.updateOne({}, { $inc: { _v: 1 } });
|
||||
});
|
||||
schema.pre('updateMany', function preUpdateUser () {
|
||||
this.updateMany({}, { $inc: { _v: 1 } });
|
||||
});
|
||||
|
||||
schema.post('save', function postSaveUser () {
|
||||
// Send a webhook notification when the user has leveled up
|
||||
if (this._tmp && this._tmp.leveledUp && this._tmp.leveledUp.length > 0) {
|
||||
|
||||
Reference in New Issue
Block a user