From 1c9fd452f82f53017d8e919f486010d9d080fe90 Mon Sep 17 00:00:00 2001 From: Jordan Brown Date: Tue, 12 May 2020 00:27:17 -0400 Subject: [PATCH] Enable retry on failure for MySql --- .../Database/MySqlDatabaseContext.cs | 23 +++++++++++-------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/Tgstation.Server.Host/Database/MySqlDatabaseContext.cs b/src/Tgstation.Server.Host/Database/MySqlDatabaseContext.cs index f97ba641f1..009ab4463b 100644 --- a/src/Tgstation.Server.Host/Database/MySqlDatabaseContext.cs +++ b/src/Tgstation.Server.Host/Database/MySqlDatabaseContext.cs @@ -33,16 +33,19 @@ namespace Tgstation.Server.Host.Database }; if (stringDeconstructor.Server == "localhost") Logger.LogWarning("MariaDB/MySQL server address is set to 'localhost'! If there are connection issues, try setting it to '127.0.0.1'!"); - if (!String.IsNullOrEmpty(DatabaseConfiguration.MySqlServerVersion)) - options.UseMySql( - DatabaseConfiguration.ConnectionString, - mySqlOptions => mySqlOptions.ServerVersion( - Version.Parse(DatabaseConfiguration.MySqlServerVersion), - DatabaseConfiguration.DatabaseType == DatabaseType.MariaDB - ? ServerType.MariaDb - : ServerType.MySql)); - else - options.UseMySql(DatabaseConfiguration.ConnectionString); + options.UseMySql( + DatabaseConfiguration.ConnectionString, + mySqlOptions => + { + mySqlOptions.EnableRetryOnFailure(); + + if (!String.IsNullOrEmpty(DatabaseConfiguration.MySqlServerVersion)) + mySqlOptions.ServerVersion( + Version.Parse(DatabaseConfiguration.MySqlServerVersion), + DatabaseConfiguration.DatabaseType == DatabaseType.MariaDB + ? ServerType.MariaDb + : ServerType.MySql); + }); } ///