Browse Source

Merge pull request #1642 from cvium/fix_slow_db

Speed up BaseItem deserialization
Joshua M. Boniface 5 years ago
parent
commit
4bb0c2d053
1 changed files with 6 additions and 11 deletions
  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");
                 }
             }