diff --git a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
index 9e7810c761..519b0f49c0 100644
--- a/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
+++ b/MediaBrowser.Server.Implementations/MediaBrowser.Server.Implementations.csproj
@@ -242,7 +242,6 @@
-
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteChapterRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteChapterRepository.cs
index 77b9932059..075ef42398 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteChapterRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteChapterRepository.cs
@@ -32,8 +32,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
_logger = logManager.GetLogger(GetType().Name);
}
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
-
///
/// Opens the connection to the database
///
@@ -54,8 +52,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
_connection.RunQueries(queries, _logger);
PrepareStatements();
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
///
@@ -286,12 +282,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
if (_connection != null)
{
if (_connection.IsOpen())
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteFileOrganizationRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteFileOrganizationRepository.cs
index 5d5855bf8b..b2a0004b42 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteFileOrganizationRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteFileOrganizationRepository.cs
@@ -21,7 +21,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
private readonly ILogger _logger;
private readonly SemaphoreSlim _writeLock = new SemaphoreSlim(1, 1);
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
private readonly IServerApplicationPaths _appPaths;
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
@@ -61,8 +60,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
_connection.RunQueries(queries, _logger);
PrepareStatements();
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
private void PrepareStatements()
@@ -446,12 +443,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
if (_connection != null)
{
if (_connection.IsOpen())
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
index e063d44dc6..c5a9db87bf 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteItemRepository.cs
@@ -130,12 +130,8 @@ namespace MediaBrowser.Server.Implementations.Persistence
_mediaStreamsRepository.Initialize();
_chapterRepository.Initialize();
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
-
///
/// The _write lock
///
@@ -430,12 +426,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
_writeLock.Wait();
if (_connection != null)
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteMediaStreamsRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteMediaStreamsRepository.cs
index 293da3f0f9..9943976243 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteMediaStreamsRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteMediaStreamsRepository.cs
@@ -1,5 +1,4 @@
-using System.Globalization;
-using MediaBrowser.Controller.Persistence;
+using MediaBrowser.Controller.Persistence;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Logging;
using System;
@@ -21,8 +20,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
private IDbCommand _deleteStreamsCommand;
private IDbCommand _saveStreamCommand;
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
-
public SqliteMediaStreamsRepository(IDbConnection connection, ILogManager logManager)
{
_connection = connection;
@@ -64,8 +61,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
AddRefFramesCommand();
PrepareStatements();
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
private void AddPixelFormatColumnCommand()
@@ -563,12 +558,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
if (_connection != null)
{
if (_connection.IsOpen())
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteProviderInfoRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteProviderInfoRepository.cs
index 743d8fed6b..62f63395ab 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteProviderInfoRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteProviderInfoRepository.cs
@@ -26,8 +26,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
_logger = logManager.GetLogger(GetType().Name);
}
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
-
///
/// Gets the name of the repository
///
@@ -66,8 +64,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
AddItemDateModifiedCommand();
PrepareStatements();
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
private static readonly string[] StatusColumns =
@@ -307,12 +303,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
if (_connection != null)
{
if (_connection.IsOpen())
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteShrinkMemoryTimer.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteShrinkMemoryTimer.cs
deleted file mode 100644
index b5a0c10b1e..0000000000
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteShrinkMemoryTimer.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-using MediaBrowser.Model.Logging;
-using System;
-using System.Data;
-using System.Threading;
-
-namespace MediaBrowser.Server.Implementations.Persistence
-{
- class SqliteShrinkMemoryTimer : IDisposable
- {
- private Timer _shrinkMemoryTimer;
-
- private readonly SemaphoreSlim _writeLock;
- private readonly ILogger _logger;
- private readonly IDbConnection _connection;
-
- public SqliteShrinkMemoryTimer(IDbConnection connection, SemaphoreSlim writeLock, ILogger logger)
- {
- _connection = connection;
- _writeLock = writeLock;
- _logger = logger;
-
- _shrinkMemoryTimer = new Timer(TimerCallback, null, TimeSpan.FromMinutes(30), TimeSpan.FromMinutes(10));
- }
-
- private async void TimerCallback(object state)
- {
- await _writeLock.WaitAsync(CancellationToken.None).ConfigureAwait(false);
-
- IDbTransaction transaction = null;
-
- try
- {
- transaction = _connection.BeginTransaction();
-
- using (var cmd = _connection.CreateCommand())
- {
- cmd.Transaction = transaction;
- cmd.CommandText = "pragma shrink_memory";
- cmd.ExecuteNonQuery();
- }
-
- transaction.Commit();
- }
- catch (OperationCanceledException)
- {
- if (transaction != null)
- {
- transaction.Rollback();
- }
-
- throw;
- }
- catch (Exception e)
- {
- _logger.ErrorException("Failed to save items:", e);
-
- if (transaction != null)
- {
- transaction.Rollback();
- }
-
- throw;
- }
- finally
- {
- if (transaction != null)
- {
- transaction.Dispose();
- }
-
- _writeLock.Release();
- }
- }
-
- public void Dispose()
- {
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
- }
- }
-}
diff --git a/MediaBrowser.Server.Implementations/Persistence/SqliteUserDataRepository.cs b/MediaBrowser.Server.Implementations/Persistence/SqliteUserDataRepository.cs
index 0f04881684..786c77605f 100644
--- a/MediaBrowser.Server.Implementations/Persistence/SqliteUserDataRepository.cs
+++ b/MediaBrowser.Server.Implementations/Persistence/SqliteUserDataRepository.cs
@@ -55,8 +55,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
_logger = logManager.GetLogger(GetType().Name);
}
- private SqliteShrinkMemoryTimer _shrinkMemoryTimer;
-
///
/// Opens the connection to the database
///
@@ -80,8 +78,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
};
_connection.RunQueries(queries, _logger);
-
- _shrinkMemoryTimer = new SqliteShrinkMemoryTimer(_connection, _writeLock, _logger);
}
///
@@ -402,12 +398,6 @@ namespace MediaBrowser.Server.Implementations.Persistence
{
lock (_disposeLock)
{
- if (_shrinkMemoryTimer != null)
- {
- _shrinkMemoryTimer.Dispose();
- _shrinkMemoryTimer = null;
- }
-
if (_connection != null)
{
if (_connection.IsOpen())