فهرست منبع

Merge pull request #1642 from cvium/fix_slow_db

Speed up BaseItem deserialization
Joshua M. Boniface 5 سال پیش
والد
کامیت
4bb0c2d053
1فایلهای تغییر یافته به همراه6 افزوده شده و 11 حذف شده
  1. 6 11
      Emby.Server.Implementations/Data/SqliteItemRepository.cs

+ 6 - 11
Emby.Server.Implementations/Data/SqliteItemRepository.cs

@@ -1298,18 +1298,13 @@ namespace Emby.Server.Implementations.Data
 
 
             if (TypeRequiresDeserialization(type))
             if (TypeRequiresDeserialization(type))
             {
             {
-                using (var stream = new MemoryStream(reader[1].ToBlob()))
+                try
                 {
                 {
-                    stream.Position = 0;
-
-                    try
-                    {
-                        item = _jsonSerializer.DeserializeFromStream(stream, type) as BaseItem;
-                    }
-                    catch (SerializationException ex)
-                    {
-                        Logger.LogError(ex, "Error deserializing item");
-                    }
+                    item = _jsonSerializer.DeserializeFromString(reader.GetString(1), type) as BaseItem;
+                }
+                catch (SerializationException ex)
+                {
+                    Logger.LogError(ex, "Error deserializing item");
                 }
                 }
             }
             }