Skip to content

Commit 25d3cd7

Browse files
authored
Forgot the other query functions
2 parents c60f64e + 77c3ceb commit 25d3cd7

File tree

1 file changed

+21
-1
lines changed

1 file changed

+21
-1
lines changed

SWBF2Admin/Database/SQLHandler.cs

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,18 @@ private void NonQuery(string query, params object[] parameters)
145145
}
146146
catch (Exception e)
147147
{
148-
Logger.Log(LogLevel.Error, "[SQL] Query failed : {0}", e.Message);
148+
//Handle MySQL inactivity error
149+
//This is a really hacky fix that should not exist.
150+
if (e.Message == "The client was disconnected by the server because of inactivity. See wait_timeout and interactive_timeout for configuring this behavior.")
151+
{
152+
Logger.Log(LogLevel.VerboseSQL, "[SQL] Inactivity timeout. Reconnecting...");
153+
connection.Close();
154+
NonQuery(query, parameters);
155+
}
156+
else
157+
{
158+
Logger.Log(LogLevel.Error, "[SQL] Query failed : {0}", e.Message);
159+
}
149160
}
150161
}
151162
private object ScalarQuery(string query, params object[] parameters)
@@ -158,6 +169,15 @@ private object ScalarQuery(string query, params object[] parameters)
158169
}
159170
catch (Exception e)
160171
{
172+
//Handle MySQL inactivity error
173+
//This is a really hacky fix that should not exist.
174+
if (e.Message == "The client was disconnected by the server because of inactivity. See wait_timeout and interactive_timeout for configuring this behavior.")
175+
{
176+
Logger.Log(LogLevel.VerboseSQL, "[SQL] Inactivity timeout. Reconnecting...");
177+
connection.Close();
178+
return ScalarQuery(query, parameters);
179+
}
180+
161181
Logger.Log(LogLevel.Error, "[SQL] Query failed : {0}", e.Message);
162182
return null;
163183
}

0 commit comments

Comments
 (0)