diff --git a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
index ff9aa4c2a3..230f633a7c 100644
--- a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
+++ b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
@@ -60,11 +60,16 @@ namespace Emby.Server.Implementations.Data
/// The cache size or null.
protected virtual int? CacheSize => null;
+ ///
+ /// Gets the locking mode. .
+ ///
+ protected virtual string LockingMode => "EXCLUSIVE";
+
///
/// Gets the journal mode. .
///
/// The journal mode.
- protected virtual string JournalMode => "TRUNCATE";
+ protected virtual string JournalMode => "WAL";
///
/// Gets the page size.
@@ -116,6 +121,11 @@ namespace Emby.Server.Implementations.Data
WriteConnection.Execute("PRAGMA cache_size=" + CacheSize.Value);
}
+ if (!string.IsNullOrWhiteSpace(LockingMode))
+ {
+ WriteConnection.Execute("PRAGMA locking_mode=" + LockingMode);
+ }
+
if (!string.IsNullOrWhiteSpace(JournalMode))
{
WriteConnection.Execute("PRAGMA journal_mode=" + JournalMode);
diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
index 763ff77f10..fb6902c398 100644
--- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
@@ -359,8 +359,6 @@ namespace Emby.Server.Implementations.Data
string[] queries =
{
- "PRAGMA locking_mode=EXCLUSIVE",
-
"create table if not exists TypedBaseItems (guid GUID primary key NOT NULL, type TEXT NOT NULL, data BLOB NULL, ParentId GUID NULL, Path TEXT NULL)",
"create table if not exists AncestorIds (ItemId GUID NOT NULL, AncestorId GUID NOT NULL, AncestorIdText TEXT NOT NULL, PRIMARY KEY (ItemId, AncestorId))",
diff --git a/Jellyfin.Server/Program.cs b/Jellyfin.Server/Program.cs
index 1506530f0c..540375dce6 100644
--- a/Jellyfin.Server/Program.cs
+++ b/Jellyfin.Server/Program.cs
@@ -273,10 +273,6 @@ namespace Jellyfin.Server
ServicePointManager.Expect100Continue = false;
Batteries_V2.Init();
- if (raw.sqlite3_enable_shared_cache(1) != raw.SQLITE_OK)
- {
- _logger.LogWarning("Failed to enable shared cache for SQLite");
- }
}
///