diff options
author | Justin Clarke Casey | 2009-05-07 13:20:29 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2009-05-07 13:20:29 +0000 |
commit | e033f4028db387dc7162e8f5ae1abb781dbfb920 (patch) | |
tree | 24e0f2583e7943a230397a28a623968fd0e2622d | |
parent | From: Alan M Webb <alan_webb@us.ibm.com> (diff) | |
download | opensim-SC-e033f4028db387dc7162e8f5ae1abb781dbfb920.zip opensim-SC-e033f4028db387dc7162e8f5ae1abb781dbfb920.tar.gz opensim-SC-e033f4028db387dc7162e8f5ae1abb781dbfb920.tar.bz2 opensim-SC-e033f4028db387dc7162e8f5ae1abb781dbfb920.tar.xz |
* Consistently use dashed uuid format for sqlite region data, as was previously done for sqlite inventory data.
* This revision contains a data migration. Please backup your sqlite region db as a precaution before using this code
* I also advise that you do a runprebuild[.sh|.bat] and a clean build ("nant clean build" if you're using the command line).
* This change is needed for future id schemes
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Data/SQLite/Resources/018_RegionStore.sql | 79 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteRegionData.cs | 73 |
2 files changed, 114 insertions, 38 deletions
diff --git a/OpenSim/Data/SQLite/Resources/018_RegionStore.sql b/OpenSim/Data/SQLite/Resources/018_RegionStore.sql new file mode 100644 index 0000000..6a390c2 --- /dev/null +++ b/OpenSim/Data/SQLite/Resources/018_RegionStore.sql | |||
@@ -0,0 +1,79 @@ | |||
1 | BEGIN; | ||
2 | |||
3 | update terrain | ||
4 | set RegionUUID = substr(RegionUUID, 1, 8) || "-" || substr(RegionUUID, 9, 4) || "-" || substr(RegionUUID, 13, 4) || "-" || substr(RegionUUID, 17, 4) || "-" || substr(RegionUUID, 21, 12) | ||
5 | where RegionUUID not like '%-%'; | ||
6 | |||
7 | |||
8 | update landaccesslist | ||
9 | set LandUUID = substr(LandUUID, 1, 8) || "-" || substr(LandUUID, 9, 4) || "-" || substr(LandUUID, 13, 4) || "-" || substr(LandUUID, 17, 4) || "-" || substr(LandUUID, 21, 12) | ||
10 | where LandUUID not like '%-%'; | ||
11 | |||
12 | update landaccesslist | ||
13 | set AccessUUID = substr(AccessUUID, 1, 8) || "-" || substr(AccessUUID, 9, 4) || "-" || substr(AccessUUID, 13, 4) || "-" || substr(AccessUUID, 17, 4) || "-" || substr(AccessUUID, 21, 12) | ||
14 | where AccessUUID not like '%-%'; | ||
15 | |||
16 | |||
17 | update prims | ||
18 | set UUID = substr(UUID, 1, 8) || "-" || substr(UUID, 9, 4) || "-" || substr(UUID, 13, 4) || "-" || substr(UUID, 17, 4) || "-" || substr(UUID, 21, 12) | ||
19 | where UUID not like '%-%'; | ||
20 | |||
21 | update prims | ||
22 | set RegionUUID = substr(RegionUUID, 1, 8) || "-" || substr(RegionUUID, 9, 4) || "-" || substr(RegionUUID, 13, 4) || "-" || substr(RegionUUID, 17, 4) || "-" || substr(RegionUUID, 21, 12) | ||
23 | where RegionUUID not like '%-%'; | ||
24 | |||
25 | update prims | ||
26 | set SceneGroupID = substr(SceneGroupID, 1, 8) || "-" || substr(SceneGroupID, 9, 4) || "-" || substr(SceneGroupID, 13, 4) || "-" || substr(SceneGroupID, 17, 4) || "-" || substr(SceneGroupID, 21, 12) | ||
27 | where SceneGroupID not like '%-%'; | ||
28 | |||
29 | update prims | ||
30 | set CreatorID = substr(CreatorID, 1, 8) || "-" || substr(CreatorID, 9, 4) || "-" || substr(CreatorID, 13, 4) || "-" || substr(CreatorID, 17, 4) || "-" || substr(CreatorID, 21, 12) | ||
31 | where CreatorID not like '%-%'; | ||
32 | |||
33 | update prims | ||
34 | set OwnerID = substr(OwnerID, 1, 8) || "-" || substr(OwnerID, 9, 4) || "-" || substr(OwnerID, 13, 4) || "-" || substr(OwnerID, 17, 4) || "-" || substr(OwnerID, 21, 12) | ||
35 | where OwnerID not like '%-%'; | ||
36 | |||
37 | update prims | ||
38 | set GroupID = substr(GroupID, 1, 8) || "-" || substr(GroupID, 9, 4) || "-" || substr(GroupID, 13, 4) || "-" || substr(GroupID, 17, 4) || "-" || substr(GroupID, 21, 12) | ||
39 | where GroupID not like '%-%'; | ||
40 | |||
41 | update prims | ||
42 | set LastOwnerID = substr(LastOwnerID, 1, 8) || "-" || substr(LastOwnerID, 9, 4) || "-" || substr(LastOwnerID, 13, 4) || "-" || substr(LastOwnerID, 17, 4) || "-" || substr(LastOwnerID, 21, 12) | ||
43 | where LastOwnerID not like '%-%'; | ||
44 | |||
45 | |||
46 | update primshapes | ||
47 | set UUID = substr(UUID, 1, 8) || "-" || substr(UUID, 9, 4) || "-" || substr(UUID, 13, 4) || "-" || substr(UUID, 17, 4) || "-" || substr(UUID, 21, 12) | ||
48 | where UUID not like '%-%'; | ||
49 | |||
50 | |||
51 | update land | ||
52 | set UUID = substr(UUID, 1, 8) || "-" || substr(UUID, 9, 4) || "-" || substr(UUID, 13, 4) || "-" || substr(UUID, 17, 4) || "-" || substr(UUID, 21, 12) | ||
53 | where UUID not like '%-%'; | ||
54 | |||
55 | update land | ||
56 | set RegionUUID = substr(RegionUUID, 1, 8) || "-" || substr(RegionUUID, 9, 4) || "-" || substr(RegionUUID, 13, 4) || "-" || substr(RegionUUID, 17, 4) || "-" || substr(RegionUUID, 21, 12) | ||
57 | where RegionUUID not like '%-%'; | ||
58 | |||
59 | update land | ||
60 | set OwnerUUID = substr(OwnerUUID, 1, 8) || "-" || substr(OwnerUUID, 9, 4) || "-" || substr(OwnerUUID, 13, 4) || "-" || substr(OwnerUUID, 17, 4) || "-" || substr(OwnerUUID, 21, 12) | ||
61 | where OwnerUUID not like '%-%'; | ||
62 | |||
63 | update land | ||
64 | set GroupUUID = substr(GroupUUID, 1, 8) || "-" || substr(GroupUUID, 9, 4) || "-" || substr(GroupUUID, 13, 4) || "-" || substr(GroupUUID, 17, 4) || "-" || substr(GroupUUID, 21, 12) | ||
65 | where GroupUUID not like '%-%'; | ||
66 | |||
67 | update land | ||
68 | set MediaTextureUUID = substr(MediaTextureUUID, 1, 8) || "-" || substr(MediaTextureUUID, 9, 4) || "-" || substr(MediaTextureUUID, 13, 4) || "-" || substr(MediaTextureUUID, 17, 4) || "-" || substr(MediaTextureUUID, 21, 12) | ||
69 | where MediaTextureUUID not like '%-%'; | ||
70 | |||
71 | update land | ||
72 | set SnapshotUUID = substr(SnapshotUUID, 1, 8) || "-" || substr(SnapshotUUID, 9, 4) || "-" || substr(SnapshotUUID, 13, 4) || "-" || substr(SnapshotUUID, 17, 4) || "-" || substr(SnapshotUUID, 21, 12) | ||
73 | where SnapshotUUID not like '%-%'; | ||
74 | |||
75 | update land | ||
76 | set AuthbuyerID = substr(AuthbuyerID, 1, 8) || "-" || substr(AuthbuyerID, 9, 4) || "-" || substr(AuthbuyerID, 13, 4) || "-" || substr(AuthbuyerID, 17, 4) || "-" || substr(AuthbuyerID, 21, 12) | ||
77 | where AuthbuyerID not like '%-%'; | ||
78 | |||
79 | COMMIT; \ No newline at end of file | ||
diff --git a/OpenSim/Data/SQLite/SQLiteRegionData.cs b/OpenSim/Data/SQLite/SQLiteRegionData.cs index 2d0f6d8..476d8db 100644 --- a/OpenSim/Data/SQLite/SQLiteRegionData.cs +++ b/OpenSim/Data/SQLite/SQLiteRegionData.cs | |||
@@ -321,7 +321,7 @@ namespace OpenSim.Data.SQLite | |||
321 | { | 321 | { |
322 | //m_log.Info("[DATASTORE]: " + | 322 | //m_log.Info("[DATASTORE]: " + |
323 | //"Adding stopped obj: " + obj.UUID + " to region: " + regionUUID); | 323 | //"Adding stopped obj: " + obj.UUID + " to region: " + regionUUID); |
324 | //addPrim(prim, Util.ToRawUuidString(obj.UUID), Util.ToRawUuidString(regionUUID)); | 324 | //addPrim(prim, obj.UUID.ToString(), regionUUID.ToString()); |
325 | } | 325 | } |
326 | else | 326 | else |
327 | { | 327 | { |
@@ -346,7 +346,7 @@ namespace OpenSim.Data.SQLite | |||
346 | DataTable prims = ds.Tables["prims"]; | 346 | DataTable prims = ds.Tables["prims"]; |
347 | DataTable shapes = ds.Tables["primshapes"]; | 347 | DataTable shapes = ds.Tables["primshapes"]; |
348 | 348 | ||
349 | string selectExp = "SceneGroupID = '" + Util.ToRawUuidString(obj) + "' and RegionUUID = '" + Util.ToRawUuidString(regionUUID) + "'"; | 349 | string selectExp = "SceneGroupID = '" + obj + "' and RegionUUID = '" + regionUUID + "'"; |
350 | lock (ds) | 350 | lock (ds) |
351 | { | 351 | { |
352 | DataRow[] primRows = prims.Select(selectExp); | 352 | DataRow[] primRows = prims.Select(selectExp); |
@@ -354,7 +354,7 @@ namespace OpenSim.Data.SQLite | |||
354 | { | 354 | { |
355 | // Remove shape rows | 355 | // Remove shape rows |
356 | UUID uuid = new UUID((string) row["UUID"]); | 356 | UUID uuid = new UUID((string) row["UUID"]); |
357 | DataRow shapeRow = shapes.Rows.Find(Util.ToRawUuidString(uuid)); | 357 | DataRow shapeRow = shapes.Rows.Find(uuid.ToString()); |
358 | if (shapeRow != null) | 358 | if (shapeRow != null) |
359 | { | 359 | { |
360 | shapeRow.Delete(); | 360 | shapeRow.Delete(); |
@@ -402,7 +402,7 @@ namespace OpenSim.Data.SQLite | |||
402 | DataTable prims = ds.Tables["prims"]; | 402 | DataTable prims = ds.Tables["prims"]; |
403 | DataTable shapes = ds.Tables["primshapes"]; | 403 | DataTable shapes = ds.Tables["primshapes"]; |
404 | 404 | ||
405 | string byRegion = "RegionUUID = '" + Util.ToRawUuidString(regionUUID) + "'"; | 405 | string byRegion = "RegionUUID = '" + regionUUID + "'"; |
406 | 406 | ||
407 | lock (ds) | 407 | lock (ds) |
408 | { | 408 | { |
@@ -423,7 +423,7 @@ namespace OpenSim.Data.SQLite | |||
423 | { | 423 | { |
424 | SceneObjectGroup group = new SceneObjectGroup(); | 424 | SceneObjectGroup group = new SceneObjectGroup(); |
425 | prim = buildPrim(primRow); | 425 | prim = buildPrim(primRow); |
426 | DataRow shapeRow = shapes.Rows.Find(Util.ToRawUuidString(prim.UUID)); | 426 | DataRow shapeRow = shapes.Rows.Find(prim.UUID.ToString()); |
427 | if (shapeRow != null) | 427 | if (shapeRow != null) |
428 | { | 428 | { |
429 | prim.Shape = buildShape(shapeRow); | 429 | prim.Shape = buildShape(shapeRow); |
@@ -464,7 +464,7 @@ namespace OpenSim.Data.SQLite | |||
464 | if (uuid != objID) //is new SceneObjectGroup ? | 464 | if (uuid != objID) //is new SceneObjectGroup ? |
465 | { | 465 | { |
466 | prim = buildPrim(primRow); | 466 | prim = buildPrim(primRow); |
467 | DataRow shapeRow = shapes.Rows.Find(Util.ToRawUuidString(prim.UUID)); | 467 | DataRow shapeRow = shapes.Rows.Find(prim.UUID.ToString()); |
468 | if (shapeRow != null) | 468 | if (shapeRow != null) |
469 | { | 469 | { |
470 | prim.Shape = buildShape(shapeRow); | 470 | prim.Shape = buildShape(shapeRow); |
@@ -541,7 +541,7 @@ namespace OpenSim.Data.SQLite | |||
541 | new SqliteCommand("delete from terrain where RegionUUID=:RegionUUID and Revision <= :Revision", | 541 | new SqliteCommand("delete from terrain where RegionUUID=:RegionUUID and Revision <= :Revision", |
542 | m_conn)) | 542 | m_conn)) |
543 | { | 543 | { |
544 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", Util.ToRawUuidString(regionID))); | 544 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", regionID.ToString())); |
545 | cmd.Parameters.Add(new SqliteParameter(":Revision", revision)); | 545 | cmd.Parameters.Add(new SqliteParameter(":Revision", revision)); |
546 | cmd.ExecuteNonQuery(); | 546 | cmd.ExecuteNonQuery(); |
547 | } | 547 | } |
@@ -554,7 +554,7 @@ namespace OpenSim.Data.SQLite | |||
554 | 554 | ||
555 | using (SqliteCommand cmd = new SqliteCommand(sql, m_conn)) | 555 | using (SqliteCommand cmd = new SqliteCommand(sql, m_conn)) |
556 | { | 556 | { |
557 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", Util.ToRawUuidString(regionID))); | 557 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", regionID.ToString())); |
558 | cmd.Parameters.Add(new SqliteParameter(":Revision", revision)); | 558 | cmd.Parameters.Add(new SqliteParameter(":Revision", revision)); |
559 | cmd.Parameters.Add(new SqliteParameter(":Heightfield", serializeTerrain(ter))); | 559 | cmd.Parameters.Add(new SqliteParameter(":Heightfield", serializeTerrain(ter))); |
560 | cmd.ExecuteNonQuery(); | 560 | cmd.ExecuteNonQuery(); |
@@ -579,7 +579,7 @@ namespace OpenSim.Data.SQLite | |||
579 | 579 | ||
580 | using (SqliteCommand cmd = new SqliteCommand(sql, m_conn)) | 580 | using (SqliteCommand cmd = new SqliteCommand(sql, m_conn)) |
581 | { | 581 | { |
582 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", Util.ToRawUuidString(regionID))); | 582 | cmd.Parameters.Add(new SqliteParameter(":RegionUUID", regionID.ToString())); |
583 | 583 | ||
584 | using (IDataReader row = cmd.ExecuteReader()) | 584 | using (IDataReader row = cmd.ExecuteReader()) |
585 | { | 585 | { |
@@ -621,13 +621,13 @@ namespace OpenSim.Data.SQLite | |||
621 | { | 621 | { |
622 | using (SqliteCommand cmd = new SqliteCommand("delete from land where UUID=:UUID", m_conn)) | 622 | using (SqliteCommand cmd = new SqliteCommand("delete from land where UUID=:UUID", m_conn)) |
623 | { | 623 | { |
624 | cmd.Parameters.Add(new SqliteParameter(":UUID", Util.ToRawUuidString(globalID))); | 624 | cmd.Parameters.Add(new SqliteParameter(":UUID", globalID.ToString())); |
625 | cmd.ExecuteNonQuery(); | 625 | cmd.ExecuteNonQuery(); |
626 | } | 626 | } |
627 | 627 | ||
628 | using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:UUID", m_conn)) | 628 | using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:UUID", m_conn)) |
629 | { | 629 | { |
630 | cmd.Parameters.Add(new SqliteParameter(":UUID", Util.ToRawUuidString(globalID))); | 630 | cmd.Parameters.Add(new SqliteParameter(":UUID", globalID.ToString())); |
631 | cmd.ExecuteNonQuery(); | 631 | cmd.ExecuteNonQuery(); |
632 | } | 632 | } |
633 | } | 633 | } |
@@ -644,7 +644,7 @@ namespace OpenSim.Data.SQLite | |||
644 | DataTable land = ds.Tables["land"]; | 644 | DataTable land = ds.Tables["land"]; |
645 | DataTable landaccesslist = ds.Tables["landaccesslist"]; | 645 | DataTable landaccesslist = ds.Tables["landaccesslist"]; |
646 | 646 | ||
647 | DataRow landRow = land.Rows.Find(Util.ToRawUuidString(parcel.landData.GlobalID)); | 647 | DataRow landRow = land.Rows.Find(parcel.landData.GlobalID.ToString()); |
648 | if (landRow == null) | 648 | if (landRow == null) |
649 | { | 649 | { |
650 | landRow = land.NewRow(); | 650 | landRow = land.NewRow(); |
@@ -659,7 +659,7 @@ namespace OpenSim.Data.SQLite | |||
659 | // I know this caused someone issues before, but OpenSim is unusable if we leave this stuff around | 659 | // I know this caused someone issues before, but OpenSim is unusable if we leave this stuff around |
660 | using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn)) | 660 | using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn)) |
661 | { | 661 | { |
662 | cmd.Parameters.Add(new SqliteParameter(":LandUUID", Util.ToRawUuidString(parcel.landData.GlobalID))); | 662 | cmd.Parameters.Add(new SqliteParameter(":LandUUID", parcel.landData.GlobalID.ToString())); |
663 | cmd.ExecuteNonQuery(); | 663 | cmd.ExecuteNonQuery(); |
664 | } | 664 | } |
665 | 665 | ||
@@ -686,12 +686,12 @@ namespace OpenSim.Data.SQLite | |||
686 | { | 686 | { |
687 | DataTable land = ds.Tables["land"]; | 687 | DataTable land = ds.Tables["land"]; |
688 | DataTable landaccesslist = ds.Tables["landaccesslist"]; | 688 | DataTable landaccesslist = ds.Tables["landaccesslist"]; |
689 | string searchExp = "RegionUUID = '" + Util.ToRawUuidString(regionUUID) + "'"; | 689 | string searchExp = "RegionUUID = '" + regionUUID + "'"; |
690 | DataRow[] rawDataForRegion = land.Select(searchExp); | 690 | DataRow[] rawDataForRegion = land.Select(searchExp); |
691 | foreach (DataRow rawDataLand in rawDataForRegion) | 691 | foreach (DataRow rawDataLand in rawDataForRegion) |
692 | { | 692 | { |
693 | LandData newLand = buildLandData(rawDataLand); | 693 | LandData newLand = buildLandData(rawDataLand); |
694 | string accessListSearchExp = "LandUUID = '" + Util.ToRawUuidString(newLand.GlobalID) + "'"; | 694 | string accessListSearchExp = "LandUUID = '" + newLand.GlobalID + "'"; |
695 | DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp); | 695 | DataRow[] rawDataForLandAccessList = landaccesslist.Select(accessListSearchExp); |
696 | foreach (DataRow rawDataLandAccess in rawDataForLandAccessList) | 696 | foreach (DataRow rawDataLandAccess in rawDataForLandAccessList) |
697 | { | 697 | { |
@@ -1447,11 +1447,11 @@ namespace OpenSim.Data.SQLite | |||
1447 | /// <param name="regionUUID"></param> | 1447 | /// <param name="regionUUID"></param> |
1448 | private static void fillPrimRow(DataRow row, SceneObjectPart prim, UUID sceneGroupID, UUID regionUUID) | 1448 | private static void fillPrimRow(DataRow row, SceneObjectPart prim, UUID sceneGroupID, UUID regionUUID) |
1449 | { | 1449 | { |
1450 | row["UUID"] = Util.ToRawUuidString(prim.UUID); | 1450 | row["UUID"] = prim.UUID.ToString(); |
1451 | row["RegionUUID"] = Util.ToRawUuidString(regionUUID); | 1451 | row["RegionUUID"] = regionUUID.ToString(); |
1452 | row["CreationDate"] = prim.CreationDate; | 1452 | row["CreationDate"] = prim.CreationDate; |
1453 | row["Name"] = prim.Name; | 1453 | row["Name"] = prim.Name; |
1454 | row["SceneGroupID"] = Util.ToRawUuidString(sceneGroupID); | 1454 | row["SceneGroupID"] = sceneGroupID.ToString(); |
1455 | // the UUID of the root part for this SceneObjectGroup | 1455 | // the UUID of the root part for this SceneObjectGroup |
1456 | // various text fields | 1456 | // various text fields |
1457 | row["Text"] = prim.Text; | 1457 | row["Text"] = prim.Text; |
@@ -1460,10 +1460,10 @@ namespace OpenSim.Data.SQLite | |||
1460 | row["TouchName"] = prim.TouchName; | 1460 | row["TouchName"] = prim.TouchName; |
1461 | // permissions | 1461 | // permissions |
1462 | row["ObjectFlags"] = prim.ObjectFlags; | 1462 | row["ObjectFlags"] = prim.ObjectFlags; |
1463 | row["CreatorID"] = Util.ToRawUuidString(prim.CreatorID); | 1463 | row["CreatorID"] = prim.CreatorID.ToString(); |
1464 | row["OwnerID"] = Util.ToRawUuidString(prim.OwnerID); | 1464 | row["OwnerID"] = prim.OwnerID.ToString(); |
1465 | row["GroupID"] = Util.ToRawUuidString(prim.GroupID); | 1465 | row["GroupID"] = prim.GroupID.ToString(); |
1466 | row["LastOwnerID"] = Util.ToRawUuidString(prim.LastOwnerID); | 1466 | row["LastOwnerID"] = prim.LastOwnerID.ToString(); |
1467 | row["OwnerMask"] = prim.OwnerMask; | 1467 | row["OwnerMask"] = prim.OwnerMask; |
1468 | row["NextOwnerMask"] = prim.NextOwnerMask; | 1468 | row["NextOwnerMask"] = prim.NextOwnerMask; |
1469 | row["GroupMask"] = prim.GroupMask; | 1469 | row["GroupMask"] = prim.GroupMask; |
@@ -1613,8 +1613,8 @@ namespace OpenSim.Data.SQLite | |||
1613 | /// <param name="regionUUID"></param> | 1613 | /// <param name="regionUUID"></param> |
1614 | private static void fillLandRow(DataRow row, LandData land, UUID regionUUID) | 1614 | private static void fillLandRow(DataRow row, LandData land, UUID regionUUID) |
1615 | { | 1615 | { |
1616 | row["UUID"] = Util.ToRawUuidString(land.GlobalID); | 1616 | row["UUID"] = land.GlobalID.ToString(); |
1617 | row["RegionUUID"] = Util.ToRawUuidString(regionUUID); | 1617 | row["RegionUUID"] = regionUUID.ToString(); |
1618 | row["LocalLandID"] = land.LocalID; | 1618 | row["LocalLandID"] = land.LocalID; |
1619 | 1619 | ||
1620 | // Bitmap is a byte[512] | 1620 | // Bitmap is a byte[512] |
@@ -1622,32 +1622,32 @@ namespace OpenSim.Data.SQLite | |||
1622 | 1622 | ||
1623 | row["Name"] = land.Name; | 1623 | row["Name"] = land.Name; |
1624 | row["Desc"] = land.Description; | 1624 | row["Desc"] = land.Description; |
1625 | row["OwnerUUID"] = Util.ToRawUuidString(land.OwnerID); | 1625 | row["OwnerUUID"] = land.OwnerID.ToString(); |
1626 | row["IsGroupOwned"] = land.IsGroupOwned; | 1626 | row["IsGroupOwned"] = land.IsGroupOwned; |
1627 | row["Area"] = land.Area; | 1627 | row["Area"] = land.Area; |
1628 | row["AuctionID"] = land.AuctionID; //Unemplemented | 1628 | row["AuctionID"] = land.AuctionID; //Unemplemented |
1629 | row["Category"] = land.Category; //Enum OpenMetaverse.Parcel.ParcelCategory | 1629 | row["Category"] = land.Category; //Enum OpenMetaverse.Parcel.ParcelCategory |
1630 | row["ClaimDate"] = land.ClaimDate; | 1630 | row["ClaimDate"] = land.ClaimDate; |
1631 | row["ClaimPrice"] = land.ClaimPrice; | 1631 | row["ClaimPrice"] = land.ClaimPrice; |
1632 | row["GroupUUID"] = Util.ToRawUuidString(land.GroupID); | 1632 | row["GroupUUID"] = land.GroupID.ToString(); |
1633 | row["SalePrice"] = land.SalePrice; | 1633 | row["SalePrice"] = land.SalePrice; |
1634 | row["LandStatus"] = land.Status; //Enum. OpenMetaverse.Parcel.ParcelStatus | 1634 | row["LandStatus"] = land.Status; //Enum. OpenMetaverse.Parcel.ParcelStatus |
1635 | row["LandFlags"] = land.Flags; | 1635 | row["LandFlags"] = land.Flags; |
1636 | row["LandingType"] = land.LandingType; | 1636 | row["LandingType"] = land.LandingType; |
1637 | row["MediaAutoScale"] = land.MediaAutoScale; | 1637 | row["MediaAutoScale"] = land.MediaAutoScale; |
1638 | row["MediaTextureUUID"] = Util.ToRawUuidString(land.MediaID); | 1638 | row["MediaTextureUUID"] = land.MediaID.ToString(); |
1639 | row["MediaURL"] = land.MediaURL; | 1639 | row["MediaURL"] = land.MediaURL; |
1640 | row["MusicURL"] = land.MusicURL; | 1640 | row["MusicURL"] = land.MusicURL; |
1641 | row["PassHours"] = land.PassHours; | 1641 | row["PassHours"] = land.PassHours; |
1642 | row["PassPrice"] = land.PassPrice; | 1642 | row["PassPrice"] = land.PassPrice; |
1643 | row["SnapshotUUID"] = Util.ToRawUuidString(land.SnapshotID); | 1643 | row["SnapshotUUID"] = land.SnapshotID.ToString(); |
1644 | row["UserLocationX"] = land.UserLocation.X; | 1644 | row["UserLocationX"] = land.UserLocation.X; |
1645 | row["UserLocationY"] = land.UserLocation.Y; | 1645 | row["UserLocationY"] = land.UserLocation.Y; |
1646 | row["UserLocationZ"] = land.UserLocation.Z; | 1646 | row["UserLocationZ"] = land.UserLocation.Z; |
1647 | row["UserLookAtX"] = land.UserLookAt.X; | 1647 | row["UserLookAtX"] = land.UserLookAt.X; |
1648 | row["UserLookAtY"] = land.UserLookAt.Y; | 1648 | row["UserLookAtY"] = land.UserLookAt.Y; |
1649 | row["UserLookAtZ"] = land.UserLookAt.Z; | 1649 | row["UserLookAtZ"] = land.UserLookAt.Z; |
1650 | row["AuthbuyerID"] = Util.ToRawUuidString(land.AuthBuyerID); | 1650 | row["AuthbuyerID"] = land.AuthBuyerID.ToString(); |
1651 | row["OtherCleanTime"] = land.OtherCleanTime; | 1651 | row["OtherCleanTime"] = land.OtherCleanTime; |
1652 | row["Dwell"] = land.Dwell; | 1652 | row["Dwell"] = land.Dwell; |
1653 | } | 1653 | } |
@@ -1660,8 +1660,8 @@ namespace OpenSim.Data.SQLite | |||
1660 | /// <param name="parcelID"></param> | 1660 | /// <param name="parcelID"></param> |
1661 | private static void fillLandAccessRow(DataRow row, ParcelManager.ParcelAccessEntry entry, UUID parcelID) | 1661 | private static void fillLandAccessRow(DataRow row, ParcelManager.ParcelAccessEntry entry, UUID parcelID) |
1662 | { | 1662 | { |
1663 | row["LandUUID"] = Util.ToRawUuidString(parcelID); | 1663 | row["LandUUID"] = parcelID.ToString(); |
1664 | row["AccessUUID"] = Util.ToRawUuidString(entry.AgentID); | 1664 | row["AccessUUID"] = entry.AgentID.ToString(); |
1665 | row["Flags"] = entry.Flags; | 1665 | row["Flags"] = entry.Flags; |
1666 | } | 1666 | } |
1667 | 1667 | ||
@@ -1742,10 +1742,7 @@ namespace OpenSim.Data.SQLite | |||
1742 | s.ProfileHollow = Convert.ToUInt16(row["ProfileHollow"]); | 1742 | s.ProfileHollow = Convert.ToUInt16(row["ProfileHollow"]); |
1743 | s.State = Convert.ToByte(row["State"]); | 1743 | s.State = Convert.ToByte(row["State"]); |
1744 | 1744 | ||
1745 | // text TODO: this isn't right] = but I'm not sure the right | 1745 | byte[] textureEntry = (byte[])row["Texture"]; |
1746 | // way to specify this as a blob atm | ||
1747 | |||
1748 | byte[] textureEntry = (byte[]) row["Texture"]; | ||
1749 | s.TextureEntry = textureEntry; | 1746 | s.TextureEntry = textureEntry; |
1750 | 1747 | ||
1751 | s.ExtraParams = (byte[]) row["ExtraParams"]; | 1748 | s.ExtraParams = (byte[]) row["ExtraParams"]; |
@@ -1760,7 +1757,7 @@ namespace OpenSim.Data.SQLite | |||
1760 | private static void fillShapeRow(DataRow row, SceneObjectPart prim) | 1757 | private static void fillShapeRow(DataRow row, SceneObjectPart prim) |
1761 | { | 1758 | { |
1762 | PrimitiveBaseShape s = prim.Shape; | 1759 | PrimitiveBaseShape s = prim.Shape; |
1763 | row["UUID"] = Util.ToRawUuidString(prim.UUID); | 1760 | row["UUID"] = prim.UUID.ToString(); |
1764 | // shape is an enum | 1761 | // shape is an enum |
1765 | row["Shape"] = 0; | 1762 | row["Shape"] = 0; |
1766 | // vectors | 1763 | // vectors |
@@ -1805,7 +1802,7 @@ namespace OpenSim.Data.SQLite | |||
1805 | DataTable prims = ds.Tables["prims"]; | 1802 | DataTable prims = ds.Tables["prims"]; |
1806 | DataTable shapes = ds.Tables["primshapes"]; | 1803 | DataTable shapes = ds.Tables["primshapes"]; |
1807 | 1804 | ||
1808 | DataRow primRow = prims.Rows.Find(Util.ToRawUuidString(prim.UUID)); | 1805 | DataRow primRow = prims.Rows.Find(prim.UUID.ToString()); |
1809 | if (primRow == null) | 1806 | if (primRow == null) |
1810 | { | 1807 | { |
1811 | primRow = prims.NewRow(); | 1808 | primRow = prims.NewRow(); |
@@ -1817,7 +1814,7 @@ namespace OpenSim.Data.SQLite | |||
1817 | fillPrimRow(primRow, prim, sceneGroupID, regionUUID); | 1814 | fillPrimRow(primRow, prim, sceneGroupID, regionUUID); |
1818 | } | 1815 | } |
1819 | 1816 | ||
1820 | DataRow shapeRow = shapes.Rows.Find(Util.ToRawUuidString(prim.UUID)); | 1817 | DataRow shapeRow = shapes.Rows.Find(prim.UUID.ToString()); |
1821 | if (shapeRow == null) | 1818 | if (shapeRow == null) |
1822 | { | 1819 | { |
1823 | shapeRow = shapes.NewRow(); | 1820 | shapeRow = shapes.NewRow(); |