* Make object persistence more granular by separating prim and prim inventory persistence

This commit is contained in:
Justin Clarke Casey
2008-01-21 15:06:49 +00:00
parent da8923450a
commit 504ae63669
8 changed files with 141 additions and 131 deletions

View File

@@ -179,13 +179,6 @@ namespace OpenSim.Region.Environment.Scenes
taskItem.InvType = item.invType;
part.AddInventoryItem(taskItem);
// It might seem somewhat crude to update the whole group for a single prim inventory change,
// but it's possible that other prim inventory changes will take place before the region
// persistence thread visits this object. In the future, changes can be signalled at a more
// granular level, or we could let the datastore worry about whether prims have really
// changed since they were last persisted.
HasGroupChanged = true;
return true;
}
else
@@ -234,14 +227,7 @@ namespace OpenSim.Region.Environment.Scenes
SceneObjectPart part = GetChildPart(item.ParentPartID);
if (part != null)
{
part.UpdateInventoryItem(item);
// It might seem somewhat crude to update the whole group for a single prim inventory change,
// but it's possible that other prim inventory changes will take place before the region
// persistence thread visits this object. In the future, changes can be signalled at a more
// granular level, or we could let the datastore worry about whether prims have really
// changed since they were last persisted.
HasGroupChanged = true;
part.UpdateInventoryItem(item);
return true;
}
@@ -263,13 +249,6 @@ namespace OpenSim.Region.Environment.Scenes
{
int type = part.RemoveInventoryItem(itemID);
// It might seem somewhat crude to update the whole group for a single prim inventory change,
// but it's possible that other prim inventory changes will take place before the region
// persistence thread visits this object. In the future, changes can be signalled at a more
// granular level, or we could let the datastore worry about whether prims have really
// changed since they were last persisted.
HasGroupChanged = true;
return type;
}