From 13f069b945b10ccdcb7ffd26392a0c9166914852 Mon Sep 17 00:00:00 2001 From: Justin Clarke Casey Date: Thu, 29 Jan 2009 20:08:04 +0000 Subject: * If an orphaned group is found in the mysql or mssql databases (i.e. there is no prim where UUID = SceneGroupID), then force one prim to have UUID = SceneGroupID. * A warning is posted about this on startup giving the location of the object * This should allow one class of persistently undeletable prims to be removed * This change should not cause any issues, but I still suggest that you backup your database beforehand * If this doesn't work for previously linked objects, then you could also try the workaround in http://opensimulator.org/mantis/view.php?id=3059 * This change has been made to mysql and mssql, but sqlite appears to work in a different way --- OpenSim/Data/SQLite/SQLiteRegionData.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'OpenSim/Data/SQLite/SQLiteRegionData.cs') diff --git a/OpenSim/Data/SQLite/SQLiteRegionData.cs b/OpenSim/Data/SQLite/SQLiteRegionData.cs index fce98a2..306dcb8 100644 --- a/OpenSim/Data/SQLite/SQLiteRegionData.cs +++ b/OpenSim/Data/SQLite/SQLiteRegionData.cs @@ -419,6 +419,7 @@ namespace OpenSim.Data.SQLite string uuid = (string) primRow["UUID"]; string objID = (string) primRow["SceneGroupID"]; + if (uuid == objID) //is new SceneObjectGroup ? { SceneObjectGroup group = new SceneObjectGroup(); @@ -451,6 +452,7 @@ namespace OpenSim.Data.SQLite } } } + // Now fill the groups with part data foreach (DataRow primRow in primsForRegion) { @@ -470,10 +472,11 @@ namespace OpenSim.Data.SQLite } else { - m_log.Info( + m_log.Warn( "[REGION DB]: No shape found for prim in storage, so setting default box shape"); prim.Shape = PrimitiveBaseShape.Default; } + createdObjects[new UUID(objID)].AddPart(prim); LoadItems(prim); } -- cgit v1.1