diff options
author | Justin Clarke Casey | 2009-01-29 20:08:04 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2009-01-29 20:08:04 +0000 |
commit | 13f069b945b10ccdcb7ffd26392a0c9166914852 (patch) | |
tree | 89cfec025d3c41b3f94d4c93e3dcbfb53d225924 /OpenSim/Data/SQLite/SQLiteRegionData.cs | |
parent | Complete the implementation of llSHA1String. (diff) | |
download | opensim-SC-13f069b945b10ccdcb7ffd26392a0c9166914852.zip opensim-SC-13f069b945b10ccdcb7ffd26392a0c9166914852.tar.gz opensim-SC-13f069b945b10ccdcb7ffd26392a0c9166914852.tar.bz2 opensim-SC-13f069b945b10ccdcb7ffd26392a0c9166914852.tar.xz |
* 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
Diffstat (limited to 'OpenSim/Data/SQLite/SQLiteRegionData.cs')
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteRegionData.cs | 5 |
1 files changed, 4 insertions, 1 deletions
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 | |||
419 | 419 | ||
420 | string uuid = (string) primRow["UUID"]; | 420 | string uuid = (string) primRow["UUID"]; |
421 | string objID = (string) primRow["SceneGroupID"]; | 421 | string objID = (string) primRow["SceneGroupID"]; |
422 | |||
422 | if (uuid == objID) //is new SceneObjectGroup ? | 423 | if (uuid == objID) //is new SceneObjectGroup ? |
423 | { | 424 | { |
424 | SceneObjectGroup group = new SceneObjectGroup(); | 425 | SceneObjectGroup group = new SceneObjectGroup(); |
@@ -451,6 +452,7 @@ namespace OpenSim.Data.SQLite | |||
451 | } | 452 | } |
452 | } | 453 | } |
453 | } | 454 | } |
455 | |||
454 | // Now fill the groups with part data | 456 | // Now fill the groups with part data |
455 | foreach (DataRow primRow in primsForRegion) | 457 | foreach (DataRow primRow in primsForRegion) |
456 | { | 458 | { |
@@ -470,10 +472,11 @@ namespace OpenSim.Data.SQLite | |||
470 | } | 472 | } |
471 | else | 473 | else |
472 | { | 474 | { |
473 | m_log.Info( | 475 | m_log.Warn( |
474 | "[REGION DB]: No shape found for prim in storage, so setting default box shape"); | 476 | "[REGION DB]: No shape found for prim in storage, so setting default box shape"); |
475 | prim.Shape = PrimitiveBaseShape.Default; | 477 | prim.Shape = PrimitiveBaseShape.Default; |
476 | } | 478 | } |
479 | |||
477 | createdObjects[new UUID(objID)].AddPart(prim); | 480 | createdObjects[new UUID(objID)].AddPart(prim); |
478 | LoadItems(prim); | 481 | LoadItems(prim); |
479 | } | 482 | } |