浏览代码

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))
             {
-                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");
                 }
             }