// creating a new db instance so that we don't have to execute everything
// in 1 mysql worker for the main stuff
db,err:=sql.Open("mysql",c.DSN)
iferr!=nil{
color.Red("> BuildLeaderboard: couldn't start secondary db connection (%v)",err)
wg.Done()
return
}
db.SetMaxOpenConns(1)
db.SetMaxIdleConns(1)
initQuery:="SELECT users_stats.id, pp_std, ranked_score_taiko, ranked_score_ctb, ranked_score_mania FROM users_stats LEFT JOIN users ON users.id = users_stats.id WHERE users.allowed = '1'"
rows,err:=db.Query(initQuery)
iferr!=nil{
queryError(err,initQuery)
wg.Done()
return
}
var(
@@ -71,11 +84,27 @@ func opBuildLeaderboard() {
// remove last two characters (`, `)
modeInsert=modeInsert[:len(modeInsert)-2]
// In this case, it is really important to truncate BEFORE and then add the insert.