From a058fca1ac134a2bbc1cfcfa7e7d3ca88c11672b Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Thu, 7 Jul 2016 19:54:52 +0100 Subject: [PATCH] reduce lock time during object inventory ProcessInventoryBackup --- .../Framework/Scenes/SceneObjectPartInventory.cs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 2841f7fe91..3b029f2221 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs @@ -1246,17 +1246,14 @@ namespace OpenSim.Region.Framework.Scenes // if (HasInventoryChanged) // { Items.LockItemsForRead(true); + ICollection itemsvalues = Items.Values; + HasInventoryChanged = false; + Items.LockItemsForRead(false); try { - datastore.StorePrimInventory(m_part.UUID, Items.Values); + datastore.StorePrimInventory(m_part.UUID, itemsvalues); } catch {} - - HasInventoryChanged = false; - - Items.LockItemsForRead(false); - - // } }