From 22c049c9c5154233125bbb977dec002f158aac0d Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Sun, 3 Feb 2019 22:39:53 -0500 Subject: [PATCH] disable autostats for cipher table --- src/Admin/Jobs/DatabaseUpdateStatisticsJob.cs | 1 + src/Core/Repositories/IMaintenanceRepository.cs | 1 + .../Repositories/SqlServer/MaintenanceRepository.cs | 11 +++++++++++ 3 files changed, 13 insertions(+) diff --git a/src/Admin/Jobs/DatabaseUpdateStatisticsJob.cs b/src/Admin/Jobs/DatabaseUpdateStatisticsJob.cs index cd124f65fa..66be8c4ba0 100644 --- a/src/Admin/Jobs/DatabaseUpdateStatisticsJob.cs +++ b/src/Admin/Jobs/DatabaseUpdateStatisticsJob.cs @@ -22,6 +22,7 @@ namespace Bit.Admin.Jobs protected async override Task ExecuteJobAsync(IJobExecutionContext context) { await _maintenanceRepository.UpdateStatisticsAsync(); + await _maintenanceRepository.DisableCipherAutoStatsAsync(); } } } diff --git a/src/Core/Repositories/IMaintenanceRepository.cs b/src/Core/Repositories/IMaintenanceRepository.cs index bacc86fe36..27f1b5cfc1 100644 --- a/src/Core/Repositories/IMaintenanceRepository.cs +++ b/src/Core/Repositories/IMaintenanceRepository.cs @@ -5,6 +5,7 @@ namespace Bit.Core.Repositories public interface IMaintenanceRepository { Task UpdateStatisticsAsync(); + Task DisableCipherAutoStatsAsync(); Task RebuildIndexesAsync(); Task DeleteExpiredGrantsAsync(); } diff --git a/src/Core/Repositories/SqlServer/MaintenanceRepository.cs b/src/Core/Repositories/SqlServer/MaintenanceRepository.cs index 98187b84c4..6a86662b93 100644 --- a/src/Core/Repositories/SqlServer/MaintenanceRepository.cs +++ b/src/Core/Repositories/SqlServer/MaintenanceRepository.cs @@ -27,6 +27,17 @@ namespace Bit.Core.Repositories.SqlServer } } + public async Task DisableCipherAutoStatsAsync() + { + using(var connection = new SqlConnection(ConnectionString)) + { + await connection.ExecuteAsync( + "sp_autostats", + new { tblname = "[dbo].[Cipher]", flagc = "OFF" }, + commandType: CommandType.StoredProcedure); + } + } + public async Task RebuildIndexesAsync() { using(var connection = new SqlConnection(ConnectionString))