Set global query splitting behavior

This commit is contained in:
Jordan Brown
2022-09-28 21:46:26 -04:00
parent 2a1f4760bb
commit abbb0369d7
4 changed files with 14 additions and 3 deletions
@@ -54,7 +54,11 @@ namespace Tgstation.Server.Host.Database
options.UseMySql(
databaseConfiguration.ConnectionString,
serverVersion,
mySqlOptions => mySqlOptions.EnableRetryOnFailure());
mySqlOptions =>
{
mySqlOptions.EnableRetryOnFailure();
mySqlOptions.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery);
});
}
}
}
@@ -44,6 +44,7 @@ namespace Tgstation.Server.Host.Database
options.UseNpgsql(databaseConfiguration.ConnectionString, options =>
{
options.EnableRetryOnFailure();
options.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery);
if (!String.IsNullOrEmpty(databaseConfiguration.ServerVersion))
options.SetPostgresVersion(
@@ -34,7 +34,13 @@ namespace Tgstation.Server.Host.Database
if (databaseConfiguration.DatabaseType != DatabaseType.SqlServer)
throw new InvalidOperationException($"Invalid DatabaseType for {nameof(SqlServerDatabaseContext)}!");
options.UseSqlServer(databaseConfiguration.ConnectionString, x => x.EnableRetryOnFailure());
options.UseSqlServer(
databaseConfiguration.ConnectionString,
sqlServerOptions =>
{
sqlServerOptions.EnableRetryOnFailure();
sqlServerOptions.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery);
});
}
}
}
@@ -42,7 +42,7 @@ namespace Tgstation.Server.Host.Database
throw new InvalidOperationException($"Invalid DatabaseType for {nameof(SqliteDatabaseContext)}!");
DesignTime = databaseConfiguration.DesignTime;
options.UseSqlite(databaseConfiguration.ConnectionString);
options.UseSqlite(databaseConfiguration.ConnectionString, sqliteOptions => sqliteOptions.UseQuerySplittingBehavior(QuerySplittingBehavior.SingleQuery));
}
/// <inheritdoc />