Jelajahi Sumber

add sqlite logging

Luke Pulverenti 8 tahun lalu
induk
melakukan
94e622e3a0

+ 9 - 0
Emby.Server.Implementations/Data/BaseSqliteRepository.cs

@@ -33,8 +33,17 @@ namespace Emby.Server.Implementations.Data
             //CheckOk(rc);
         }
 
+        private static bool _versionLogged;
+
         protected virtual SQLiteDatabaseConnection CreateConnection(bool isReadOnly = false)
         {
+            if (!_versionLogged)
+            {
+                _versionLogged = true;
+                Logger.Info("Sqlite version: " + SQLite3.Version);
+                Logger.Info("Sqlite compiler options: " + string.Join(",", SQLite3.CompilerOptions.ToArray()));
+            }
+
             ConnectionFlags connectionFlags;
 
             //isReadOnly = false;

+ 1 - 6
src/Emby.Server/CoreAppHost.cs

@@ -4,12 +4,12 @@ using System.Linq;
 using System.Reflection;
 using System.Threading.Tasks;
 using Emby.Server.Core;
-using Emby.Server.Core.Data;
 using Emby.Server.Core.FFMpeg;
 using Emby.Server.Data;
 using MediaBrowser.Model.IO;
 using MediaBrowser.Model.Logging;
 using MediaBrowser.Model.System;
+using Emby.Server.Implementations;
 
 namespace Emby.Server
 {
@@ -55,11 +55,6 @@ namespace Emby.Server
         {
         }
 
-        protected override IDbConnector GetDbConnector()
-        {
-            return new DbConnector(Logger);
-        }
-
         protected override void ConfigureAutoRunInternal(bool autorun)
         {
         }

+ 0 - 52
src/Emby.Server/Data/DbConnector.cs

@@ -1,52 +0,0 @@
-using System;
-using System.Data;
-using System.Threading.Tasks;
-using MediaBrowser.Model.Logging;
-using Emby.Server.Core.Data;
-using Microsoft.Data.Sqlite;
-
-namespace Emby.Server.Data
-{
-    public class DbConnector : IDbConnector
-    {
-        private readonly ILogger _logger;
-
-        public DbConnector(ILogger logger)
-        {
-            _logger = logger;
-        }
-
-        public async Task<IDbConnection> Connect(string dbPath, bool isReadOnly, bool enablePooling = false, int? cacheSize = null)
-        {
-            if (string.IsNullOrEmpty(dbPath))
-            {
-                throw new ArgumentNullException("dbPath");
-            }
-
-            //SQLiteConnection.SetMemoryStatus(false);
-            
-            var connectionstr = new SqliteConnectionStringBuilder
-            {
-                //PageSize = 4096,
-                //CacheSize = cacheSize ?? 2000,
-                //SyncMode = SynchronizationModes.Normal,
-                DataSource = dbPath,
-                //JournalMode = SQLiteJournalModeEnum.Wal,
-
-                // This is causing crashing under linux
-                //Pooling = enablePooling && Environment.OSVersion.Platform == PlatformID.Win32NT,
-                //ReadOnly = isReadOnly,
-                Cache = enablePooling ? SqliteCacheMode.Default : SqliteCacheMode.Private,
-                Mode = isReadOnly ? SqliteOpenMode.ReadOnly : SqliteOpenMode.ReadWriteCreate
-            };
-
-            var connectionString = connectionstr.ConnectionString;
-
-            var connection = new SqliteConnection(connectionString);
-
-            await connection.OpenAsync().ConfigureAwait(false);
-
-            return connection;
-        }
-    }
-}

+ 2 - 1
src/Emby.Server/Program.cs

@@ -15,10 +15,11 @@ using Emby.Common.Implementations.Logging;
 using Emby.Common.Implementations.Networking;
 using Emby.Drawing;
 using Emby.Server.Core;
-using Emby.Server.Core.Browser;
+using Emby.Server.Implementations.Browser;
 using Emby.Server.Implementations.IO;
 using MediaBrowser.Common.Net;
 using Emby.Server.IO;
+using Emby.Server.Implementations;
 
 namespace Emby.Server
 {