Optimization: don't fetch replay field since we don't use it.
This commit is contained in:
parent
1cbbeb1a1e
commit
691ff70664
@ -39,7 +39,43 @@ class ScoreService(
|
||||
}
|
||||
|
||||
fun getReplayData(replayId: Long): ReplayData? {
|
||||
val result = dslContext.select(DSL.asterisk())
|
||||
val result = dslContext.select(
|
||||
SCORES.ID,
|
||||
SCORES.USER_ID,
|
||||
USERS.USERNAME,
|
||||
SCORES.DATE,
|
||||
BEATMAPS.BEATMAP_ID,
|
||||
BEATMAPS.BEATMAPSET_ID,
|
||||
BEATMAPS.ARTIST,
|
||||
BEATMAPS.TITLE,
|
||||
BEATMAPS.STAR_RATING,
|
||||
BEATMAPS.CREATOR,
|
||||
BEATMAPS.VERSION,
|
||||
SCORES.PP,
|
||||
SCORES.FRAMETIME,
|
||||
SCORES.UR,
|
||||
SCORES.ADJUSTED_UR,
|
||||
SCORES.SCORE,
|
||||
SCORES.MODS,
|
||||
SCORES.RANK,
|
||||
SCORES.SNAPS,
|
||||
SCORES.EDGE_HITS,
|
||||
SCORES.PERFECT,
|
||||
SCORES.MAX_COMBO,
|
||||
SCORES.COUNT_300,
|
||||
SCORES.COUNT_100,
|
||||
SCORES.COUNT_50,
|
||||
SCORES.COUNT_MISS,
|
||||
SCORES.MEAN_ERROR,
|
||||
SCORES.ERROR_VARIANCE,
|
||||
SCORES.ERROR_STANDARD_DEVIATION,
|
||||
SCORES.MINIMUM_ERROR,
|
||||
SCORES.MAXIMUM_ERROR,
|
||||
SCORES.ERROR_RANGE,
|
||||
SCORES.ERROR_COEFFICIENT_OF_VARIATION,
|
||||
SCORES.ERROR_KURTOSIS,
|
||||
SCORES.ERROR_SKEWNESS
|
||||
)
|
||||
.from(SCORES)
|
||||
.join(USERS).on(SCORES.USER_ID.eq(USERS.USER_ID))
|
||||
.join(BEATMAPS).on(SCORES.BEATMAP_ID.eq(BEATMAPS.BEATMAP_ID))
|
||||
@ -101,7 +137,19 @@ class ScoreService(
|
||||
}
|
||||
|
||||
fun getSuspiciousScores(condition: Condition = getDefaultCondition()): List<SuspiciousScoreEntry> {
|
||||
val result = dslContext.select(DSL.asterisk())
|
||||
val result = dslContext.select(
|
||||
SCORES.USER_ID,
|
||||
USERS.USERNAME,
|
||||
SCORES.REPLAY_ID,
|
||||
SCORES.DATE,
|
||||
BEATMAPS.BEATMAP_ID,
|
||||
BEATMAPS.BEATMAPSET_ID,
|
||||
BEATMAPS.TITLE,
|
||||
BEATMAPS.STAR_RATING,
|
||||
SCORES.PP,
|
||||
SCORES.FRAMETIME,
|
||||
SCORES.UR
|
||||
)
|
||||
.from(SCORES)
|
||||
.join(USERS).on(SCORES.USER_ID.eq(USERS.USER_ID))
|
||||
.join(BEATMAPS).on(SCORES.BEATMAP_ID.eq(BEATMAPS.BEATMAP_ID))
|
||||
@ -161,9 +209,25 @@ class ScoreService(
|
||||
)
|
||||
}
|
||||
|
||||
fun getSimilarReplaysRecords(condition: Condition = DSL.noCondition(), includeBanned: Boolean = false): Result<Record> {
|
||||
fun getSimilarReplaysRecords(condition: Condition = DSL.noCondition(), includeBanned: Boolean = false): List<Record> {
|
||||
return dslContext
|
||||
.select()
|
||||
.select(
|
||||
osuScoreAlias1.REPLAY_ID,
|
||||
osuScoreAlias1.USER_ID,
|
||||
osuUserAlias1.USERNAME,
|
||||
osuScoreAlias1.DATE,
|
||||
osuScoreAlias1.PP,
|
||||
osuScoreAlias2.REPLAY_ID,
|
||||
osuScoreAlias2.USER_ID,
|
||||
osuUserAlias2.USERNAME,
|
||||
osuScoreAlias2.DATE,
|
||||
osuScoreAlias2.PP,
|
||||
BEATMAPS.BEATMAP_ID,
|
||||
BEATMAPS.TITLE,
|
||||
BEATMAPS.STAR_RATING,
|
||||
BEATMAPS.BEATMAPSET_ID,
|
||||
SCORES_SIMILARITY.SIMILARITY
|
||||
)
|
||||
.from(SCORES_SIMILARITY)
|
||||
.join(osuScoreAlias1).on(osuScoreAlias1.REPLAY_ID.eq(SCORES_SIMILARITY.REPLAY_ID_1))
|
||||
.join(osuUserAlias1).on(osuScoreAlias1.USER_ID.eq(osuUserAlias1.USER_ID))
|
||||
@ -198,7 +262,7 @@ class ScoreService(
|
||||
return mapSimilarReplays(replays)
|
||||
}
|
||||
|
||||
private fun mapSimilarReplays(replays: Result<Record>) = replays.map {
|
||||
private fun mapSimilarReplays(replays: List<Record>) = replays.map {
|
||||
// Extract necessary fields
|
||||
var replayId1 = it.get(osuScoreAlias1.REPLAY_ID, Long::class.java)
|
||||
var replayId2 = it.get(osuScoreAlias2.REPLAY_ID, Long::class.java)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user