diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-11-11 13:08:48 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-11-11 13:08:48 +0900 |
| commit | 75864a51252933b03e53a36a21efd11bcac6bdac (patch) | |
| tree | 045cbe02cfcbf634f37f6b362fe56dcc8f4a3416 | |
| parent | Merge branch 'develop' of https://github.com/syuilo/misskey into develop (diff) | |
| download | sharkey-75864a51252933b03e53a36a21efd11bcac6bdac.tar.gz sharkey-75864a51252933b03e53a36a21efd11bcac6bdac.tar.bz2 sharkey-75864a51252933b03e53a36a21efd11bcac6bdac.zip | |
Fix #3190
| -rw-r--r-- | src/chart/index.ts | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/chart/index.ts b/src/chart/index.ts index 84fbbac656..0c8bccb3b5 100644 --- a/src/chart/index.ts +++ b/src/chart/index.ts @@ -250,7 +250,7 @@ export default abstract class Chart<T> { group: group, span: span, date: { - $gt: gt.toDate() + $gte: gt.toDate() } }, { sort: { @@ -280,6 +280,29 @@ export default abstract class Chart<T> { if (recentLog) { logs = [recentLog]; } + + // 要求された範囲の最も古い箇所に位置するログが存在しなかったら + } else if (!utc(logs[logs.length - 1].date).isSame(gt)) { + // 要求された範囲の最も古い箇所時点での最も新しいログを持ってきて末尾に追加する + // (隙間埋めできないため) + const outdatedLog = await this.collection.findOne({ + group: group, + span: span, + date: { + $lt: gt.toDate() + } + }, { + sort: { + date: -1 + }, + fields: { + _id: 0 + } + }); + + if (outdatedLog) { + logs.push(outdatedLog); + } } // 整形 |