summaryrefslogtreecommitdiff
path: root/src/services/note
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2021-03-21 22:15:45 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2021-03-21 22:15:45 +0900
commit82de8b7c50767e71f5414481fbb4e5ff7a449593 (patch)
tree2f5d61c8908def53286fdd1495b5893d29fea2d9 /src/services/note
parentperf(server): Reduce database query (diff)
downloadsharkey-82de8b7c50767e71f5414481fbb4e5ff7a449593.tar.gz
sharkey-82de8b7c50767e71f5414481fbb4e5ff7a449593.tar.bz2
sharkey-82de8b7c50767e71f5414481fbb4e5ff7a449593.zip
perf(server): Reduce database query
Diffstat (limited to 'src/services/note')
-rw-r--r--src/services/note/create.ts11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/services/note/create.ts b/src/services/note/create.ts
index a85e72c5f9..96177e9758 100644
--- a/src/services/note/create.ts
+++ b/src/services/note/create.ts
@@ -444,8 +444,13 @@ async function renderNoteOrRenoteActivity(data: Option, note: Note) {
}
function incRenoteCount(renote: Note) {
- Notes.increment({ id: renote.id }, 'renoteCount', 1);
- Notes.increment({ id: renote.id }, 'score', 1);
+ Notes.createQueryBuilder().update()
+ .set({
+ renoteCount: () => '"renoteCount" + 1',
+ score: () => '"score" + 1'
+ })
+ .where('id = :id', { id: renote.id })
+ .execute();
}
async function insertNote(user: User, data: Option, tags: string[], emojis: string[], mentionedUsers: User[]) {
@@ -525,7 +530,7 @@ async function insertNote(user: User, data: Option, tags: string[], emojis: stri
await Notes.insert(insert);
}
- return await Notes.findOneOrFail(insert.id);
+ return insert;
} catch (e) {
// duplicate key error
if (isDuplicateKeyValueError(e)) {