diff --git a/src/main/scala/lc/database/statements.scala b/src/main/scala/lc/database/statements.scala index bffa420..fdbd637 100644 --- a/src/main/scala/lc/database/statements.scala +++ b/src/main/scala/lc/database/statements.scala @@ -19,7 +19,10 @@ class Statements(dbConn: DBConn, maxAttempts: Int) { "contentInput varchar, " + "image blob, " + "attempted int default 0, " + - "PRIMARY KEY(token))" + "PRIMARY KEY(token));" + + """ + CREATE INDEX IF NOT EXISTS attempted ON challenge(attempted); + """ ) stmt.execute( "CREATE TABLE IF NOT EXISTS mapId" + @@ -69,13 +72,13 @@ class Statements(dbConn: DBConn, maxAttempts: Int) { val tokenPstmt: PreparedStatement = dbConn.con.prepareStatement( s""" - SELECT token + SELECT token, attempted FROM challenge WHERE attempted < $maxAttempts AND contentLevel = ? AND contentType = ? AND contentInput = ? - ORDER BY RAND() LIMIT 1""" + ORDER BY attempted ASC LIMIT 1""" ) val deleteAnswerPstmt: PreparedStatement = dbConn.con.prepareStatement(