diff options
| author | かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> | 2025-01-11 22:43:42 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-01-11 13:43:42 +0000 |
| commit | c4192e81ed30292a06b85e7b00578ca87c97d076 (patch) | |
| tree | f63b8b953a37284721b4a04772c8d905126626c4 /packages/backend/src/core/chart | |
| parent | fix(frontend-embed): 型チェックエラーを修正 (#15216) (diff) | |
| download | misskey-c4192e81ed30292a06b85e7b00578ca87c97d076.tar.gz misskey-c4192e81ed30292a06b85e7b00578ca87c97d076.tar.bz2 misskey-c4192e81ed30292a06b85e7b00578ca87c97d076.zip | |
enhance(backend): チャートの処理を一つずつ行うことでDBの同時接続とタイムアウトを削減 (#15239)
* sync charts one-at-a-time to reduce database contention and timeouts
* fix merge resolve failure
* Update Changelog
* update changelog
* add comments
---------
Co-authored-by: Hazelnoot <acomputerdog@gmail.com>
Diffstat (limited to 'packages/backend/src/core/chart')
| -rw-r--r-- | packages/backend/src/core/chart/ChartManagementService.ts | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/packages/backend/src/core/chart/ChartManagementService.ts b/packages/backend/src/core/chart/ChartManagementService.ts index 79681370a1..f04c561063 100644 --- a/packages/backend/src/core/chart/ChartManagementService.ts +++ b/packages/backend/src/core/chart/ChartManagementService.ts @@ -58,9 +58,9 @@ export class ChartManagementService implements OnApplicationShutdown { @bindThis public async start() { // 20分おきにメモリ情報をDBに書き込み - this.saveIntervalId = setInterval(() => { + this.saveIntervalId = setInterval(async () => { for (const chart of this.charts) { - chart.save(); + await chart.save(); } }, 1000 * 60 * 20); } @@ -69,9 +69,9 @@ export class ChartManagementService implements OnApplicationShutdown { public async dispose(): Promise<void> { clearInterval(this.saveIntervalId); if (process.env.NODE_ENV !== 'test') { - await Promise.all( - this.charts.map(chart => chart.save()), - ); + for (const chart of this.charts) { + await chart.save(); + } } } |