aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Data/PGSQL
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xOpenSim/Data/PGSQL/PGSQLGroupsData.cs4
-rwxr-xr-xOpenSim/Data/PGSQL/PGSQLSimulationData.cs46
-rw-r--r--OpenSim/Data/PGSQL/Resources/RegionStore.migrations16
3 files changed, 58 insertions, 8 deletions
diff --git a/OpenSim/Data/PGSQL/PGSQLGroupsData.cs b/OpenSim/Data/PGSQL/PGSQLGroupsData.cs
index 6ef576b..f398256 100755
--- a/OpenSim/Data/PGSQL/PGSQLGroupsData.cs
+++ b/OpenSim/Data/PGSQL/PGSQLGroupsData.cs
@@ -435,7 +435,7 @@ namespace OpenSim.Data.PGSQL
435 435
436 using (NpgsqlCommand cmd = new NpgsqlCommand()) 436 using (NpgsqlCommand cmd = new NpgsqlCommand())
437 { 437 {
438 cmd.CommandText = String.Format("delete from {0} where \"TMStamp\" < CURRENT_DATE - INTERVAL '2 week'", m_Realm); 438 cmd.CommandText = String.Format("delete from {0} where \"TMStamp\"::abstime::timestamp < now() - INTERVAL '2 week'", m_Realm);
439 439
440 ExecuteNonQuery(cmd); 440 ExecuteNonQuery(cmd);
441 } 441 }
@@ -461,7 +461,7 @@ namespace OpenSim.Data.PGSQL
461 461
462 using (NpgsqlCommand cmd = new NpgsqlCommand()) 462 using (NpgsqlCommand cmd = new NpgsqlCommand())
463 { 463 {
464 cmd.CommandText = String.Format("delete from {0} where \"TMStamp\" < CURRENT_DATE - INTERVAL '2 week'", m_Realm); 464 cmd.CommandText = String.Format("delete from {0} where \"TMStamp\"::abstime::timestamp < now() - INTERVAL '2 week'", m_Realm);
465 465
466 ExecuteNonQuery(cmd); 466 ExecuteNonQuery(cmd);
467 } 467 }
diff --git a/OpenSim/Data/PGSQL/PGSQLSimulationData.cs b/OpenSim/Data/PGSQL/PGSQLSimulationData.cs
index 33d12bd..625120b 100755
--- a/OpenSim/Data/PGSQL/PGSQLSimulationData.cs
+++ b/OpenSim/Data/PGSQL/PGSQLSimulationData.cs
@@ -350,10 +350,11 @@ namespace OpenSim.Data.PGSQL
350 ""CameraEyeOffsetY"" = :CameraEyeOffsetY, ""CameraEyeOffsetZ"" = :CameraEyeOffsetZ, ""CameraAtOffsetX"" = :CameraAtOffsetX, 350 ""CameraEyeOffsetY"" = :CameraEyeOffsetY, ""CameraEyeOffsetZ"" = :CameraEyeOffsetZ, ""CameraAtOffsetX"" = :CameraAtOffsetX,
351 ""CameraAtOffsetY"" = :CameraAtOffsetY, ""CameraAtOffsetZ"" = :CameraAtOffsetZ, ""ForceMouselook"" = :ForceMouselook, 351 ""CameraAtOffsetY"" = :CameraAtOffsetY, ""CameraAtOffsetZ"" = :CameraAtOffsetZ, ""ForceMouselook"" = :ForceMouselook,
352 ""ScriptAccessPin"" = :ScriptAccessPin, ""AllowedDrop"" = :AllowedDrop, ""DieAtEdge"" = :DieAtEdge, ""SalePrice"" = :SalePrice, 352 ""ScriptAccessPin"" = :ScriptAccessPin, ""AllowedDrop"" = :AllowedDrop, ""DieAtEdge"" = :DieAtEdge, ""SalePrice"" = :SalePrice,
353 ""SaleType"" = :SaleType, ""ColorR"" = :ColorR, ""ColorG"" = :ColorG, ""ColorB"" = :ColorB, ""ColorA"" = :ColorA, ""ParticleSystem"" = :ParticleSystem, 353 ""PhysicsShapeType"" = :PhysicsShapeType, ""Density"" = :Density, ""GravityModifier"" = :GravityModifier, ""Friction"" = :Friction, ""Restitution"" = :Restitution,
354 ""PassCollisions"" = :PassCollisions, ""RotationAxisLocks"" = :RotationAxisLocks, ""RezzerID"" = :RezzerID,
354 ""ClickAction"" = :ClickAction, ""Material"" = :Material, ""CollisionSound"" = :CollisionSound, ""CollisionSoundVolume"" = :CollisionSoundVolume, ""PassTouches"" = :PassTouches, 355 ""ClickAction"" = :ClickAction, ""Material"" = :Material, ""CollisionSound"" = :CollisionSound, ""CollisionSoundVolume"" = :CollisionSoundVolume, ""PassTouches"" = :PassTouches,
355 ""LinkNumber"" = :LinkNumber, ""MediaURL"" = :MediaURL, ""DynAttrs"" = :DynAttrs, 356 ""LinkNumber"" = :LinkNumber, ""MediaURL"" = :MediaURL, ""DynAttrs"" = :DynAttrs,
356 ""PhysicsShapeType"" = :PhysicsShapeType, ""Density"" = :Density, ""GravityModifier"" = :GravityModifier, ""Friction"" = :Friction, ""Restitution"" = :Restitution 357 ""PhysInertia"" = :PhysInertia
357 WHERE ""UUID"" = :UUID ; 358 WHERE ""UUID"" = :UUID ;
358 359
359 INSERT INTO 360 INSERT INTO
@@ -367,7 +368,7 @@ namespace OpenSim.Data.PGSQL
367 ""OmegaY"", ""OmegaZ"", ""CameraEyeOffsetX"", ""CameraEyeOffsetY"", ""CameraEyeOffsetZ"", ""CameraAtOffsetX"", ""CameraAtOffsetY"", ""CameraAtOffsetZ"", 368 ""OmegaY"", ""OmegaZ"", ""CameraEyeOffsetX"", ""CameraEyeOffsetY"", ""CameraEyeOffsetZ"", ""CameraAtOffsetX"", ""CameraAtOffsetY"", ""CameraAtOffsetZ"",
368 ""ForceMouselook"", ""ScriptAccessPin"", ""AllowedDrop"", ""DieAtEdge"", ""SalePrice"", ""SaleType"", ""ColorR"", ""ColorG"", ""ColorB"", ""ColorA"", 369 ""ForceMouselook"", ""ScriptAccessPin"", ""AllowedDrop"", ""DieAtEdge"", ""SalePrice"", ""SaleType"", ""ColorR"", ""ColorG"", ""ColorB"", ""ColorA"",
369 ""ParticleSystem"", ""ClickAction"", ""Material"", ""CollisionSound"", ""CollisionSoundVolume"", ""PassTouches"", ""LinkNumber"", ""MediaURL"", ""DynAttrs"", 370 ""ParticleSystem"", ""ClickAction"", ""Material"", ""CollisionSound"", ""CollisionSoundVolume"", ""PassTouches"", ""LinkNumber"", ""MediaURL"", ""DynAttrs"",
370 ""PhysicsShapeType"", ""Density"", ""GravityModifier"", ""Friction"", ""Restitution"" 371 ""PhysicsShapeType"", ""Density"", ""GravityModifier"", ""Friction"", ""Restitution"", ""PassCollisions"", ""RotationAxisLocks"", ""RezzerID"" , ""PhysInertia""
371 ) Select 372 ) Select
372 :UUID, :CreationDate, :Name, :Text, :Description, :SitName, :TouchName, :ObjectFlags, :OwnerMask, :NextOwnerMask, :GroupMask, 373 :UUID, :CreationDate, :Name, :Text, :Description, :SitName, :TouchName, :ObjectFlags, :OwnerMask, :NextOwnerMask, :GroupMask,
373 :EveryoneMask, :BaseMask, :PositionX, :PositionY, :PositionZ, :GroupPositionX, :GroupPositionY, :GroupPositionZ, :VelocityX, 374 :EveryoneMask, :BaseMask, :PositionX, :PositionY, :PositionZ, :GroupPositionX, :GroupPositionY, :GroupPositionZ, :VelocityX,
@@ -378,7 +379,7 @@ namespace OpenSim.Data.PGSQL
378 :OmegaY, :OmegaZ, :CameraEyeOffsetX, :CameraEyeOffsetY, :CameraEyeOffsetZ, :CameraAtOffsetX, :CameraAtOffsetY, :CameraAtOffsetZ, 379 :OmegaY, :OmegaZ, :CameraEyeOffsetX, :CameraEyeOffsetY, :CameraEyeOffsetZ, :CameraAtOffsetX, :CameraAtOffsetY, :CameraAtOffsetZ,
379 :ForceMouselook, :ScriptAccessPin, :AllowedDrop, :DieAtEdge, :SalePrice, :SaleType, :ColorR, :ColorG, :ColorB, :ColorA, 380 :ForceMouselook, :ScriptAccessPin, :AllowedDrop, :DieAtEdge, :SalePrice, :SaleType, :ColorR, :ColorG, :ColorB, :ColorA,
380 :ParticleSystem, :ClickAction, :Material, :CollisionSound, :CollisionSoundVolume, :PassTouches, :LinkNumber, :MediaURL, :DynAttrs, 381 :ParticleSystem, :ClickAction, :Material, :CollisionSound, :CollisionSoundVolume, :PassTouches, :LinkNumber, :MediaURL, :DynAttrs,
381 :PhysicsShapeType, :Density, :GravityModifier, :Friction, :Restitution 382 :PhysicsShapeType, :Density, :GravityModifier, :Friction, :Restitution, :PassCollisions, :RotationAxisLocks, :RezzerID, :PhysInertia
382 where not EXISTS (SELECT ""UUID"" FROM prims WHERE ""UUID"" = :UUID); 383 where not EXISTS (SELECT ""UUID"" FROM prims WHERE ""UUID"" = :UUID);
383 "; 384 ";
384 385
@@ -1678,6 +1679,12 @@ namespace OpenSim.Data.PGSQL
1678 prim.OwnerID = new UUID((Guid)primRow["OwnerID"]); 1679 prim.OwnerID = new UUID((Guid)primRow["OwnerID"]);
1679 prim.GroupID = new UUID((Guid)primRow["GroupID"]); 1680 prim.GroupID = new UUID((Guid)primRow["GroupID"]);
1680 prim.LastOwnerID = new UUID((Guid)primRow["LastOwnerID"]); 1681 prim.LastOwnerID = new UUID((Guid)primRow["LastOwnerID"]);
1682
1683 if (primRow["RezzerID"] != DBNull.Value)
1684 prim.RezzerID = new UUID((Guid)primRow["RezzerID"]);
1685 else
1686 prim.RezzerID = UUID.Zero;
1687
1681 prim.OwnerMask = Convert.ToUInt32(primRow["OwnerMask"]); 1688 prim.OwnerMask = Convert.ToUInt32(primRow["OwnerMask"]);
1682 prim.NextOwnerMask = Convert.ToUInt32(primRow["NextOwnerMask"]); 1689 prim.NextOwnerMask = Convert.ToUInt32(primRow["NextOwnerMask"]);
1683 prim.GroupMask = Convert.ToUInt32(primRow["GroupMask"]); 1690 prim.GroupMask = Convert.ToUInt32(primRow["GroupMask"]);
@@ -1796,6 +1803,13 @@ namespace OpenSim.Data.PGSQL
1796 prim.GravityModifier = Convert.ToSingle(primRow["GravityModifier"]); 1803 prim.GravityModifier = Convert.ToSingle(primRow["GravityModifier"]);
1797 prim.Friction = Convert.ToSingle(primRow["Friction"]); 1804 prim.Friction = Convert.ToSingle(primRow["Friction"]);
1798 prim.Restitution = Convert.ToSingle(primRow["Restitution"]); 1805 prim.Restitution = Convert.ToSingle(primRow["Restitution"]);
1806 prim.RotationAxisLocks = Convert.ToByte(primRow["RotationAxisLocks"]);
1807
1808
1809 PhysicsInertiaData pdata = null;
1810 if (!(primRow["PhysInertia"] is System.DBNull))
1811 pdata = PhysicsInertiaData.FromXml2(primRow["PhysInertia"].ToString());
1812 prim.PhysicsInertia = pdata;
1799 1813
1800 return prim; 1814 return prim;
1801 } 1815 }
@@ -2097,6 +2111,7 @@ namespace OpenSim.Data.PGSQL
2097 parameters.Add(_Database.CreateParameter("OwnerID", prim.OwnerID)); 2111 parameters.Add(_Database.CreateParameter("OwnerID", prim.OwnerID));
2098 parameters.Add(_Database.CreateParameter("GroupID", prim.GroupID)); 2112 parameters.Add(_Database.CreateParameter("GroupID", prim.GroupID));
2099 parameters.Add(_Database.CreateParameter("LastOwnerID", prim.LastOwnerID)); 2113 parameters.Add(_Database.CreateParameter("LastOwnerID", prim.LastOwnerID));
2114 parameters.Add(_Database.CreateParameter("RezzerID", prim.RezzerID));
2100 parameters.Add(_Database.CreateParameter("OwnerMask", prim.OwnerMask)); 2115 parameters.Add(_Database.CreateParameter("OwnerMask", prim.OwnerMask));
2101 parameters.Add(_Database.CreateParameter("NextOwnerMask", prim.NextOwnerMask)); 2116 parameters.Add(_Database.CreateParameter("NextOwnerMask", prim.NextOwnerMask));
2102 parameters.Add(_Database.CreateParameter("GroupMask", prim.GroupMask)); 2117 parameters.Add(_Database.CreateParameter("GroupMask", prim.GroupMask));
@@ -2196,10 +2211,28 @@ namespace OpenSim.Data.PGSQL
2196 parameters.Add(_Database.CreateParameter("CollisionSound", prim.CollisionSound)); 2211 parameters.Add(_Database.CreateParameter("CollisionSound", prim.CollisionSound));
2197 parameters.Add(_Database.CreateParameter("CollisionSoundVolume", prim.CollisionSoundVolume)); 2212 parameters.Add(_Database.CreateParameter("CollisionSoundVolume", prim.CollisionSoundVolume));
2198 2213
2199 parameters.Add(_Database.CreateParameter("PassTouches", prim.PassTouches)); 2214 parameters.Add(_Database.CreateParameter("PassTouches", (bool)prim.PassTouches));
2215 parameters.Add(_Database.CreateParameter("PassCollisions", prim.PassCollisions));
2216
2217
2218 if (prim.PassTouches)
2219 parameters.Add(_Database.CreateParameter("PassTouches", true));
2220 else
2221 parameters.Add(_Database.CreateParameter("PassTouches", false));
2222
2223 if (prim.PassCollisions)
2224 parameters.Add(_Database.CreateParameter("PassCollisions", 1));
2225 else
2226 parameters.Add(_Database.CreateParameter("PassCollisions", 0));
2200 2227
2201 parameters.Add(_Database.CreateParameter("LinkNumber", prim.LinkNum)); 2228 parameters.Add(_Database.CreateParameter("LinkNumber", prim.LinkNum));
2202 parameters.Add(_Database.CreateParameter("MediaURL", prim.MediaUrl)); 2229 parameters.Add(_Database.CreateParameter("MediaURL", prim.MediaUrl));
2230
2231 if (prim.PhysicsInertia != null)
2232 parameters.Add(_Database.CreateParameter("PhysInertia", prim.PhysicsInertia.ToXml2()));
2233 else
2234 parameters.Add(_Database.CreateParameter("PhysInertia", String.Empty));
2235
2203 2236
2204 if (prim.DynAttrs.CountNamespaces > 0) 2237 if (prim.DynAttrs.CountNamespaces > 0)
2205 parameters.Add(_Database.CreateParameter("DynAttrs", prim.DynAttrs.ToXml())); 2238 parameters.Add(_Database.CreateParameter("DynAttrs", prim.DynAttrs.ToXml()));
@@ -2211,12 +2244,13 @@ namespace OpenSim.Data.PGSQL
2211 parameters.Add(_Database.CreateParameter("GravityModifier", (double)prim.GravityModifier)); 2244 parameters.Add(_Database.CreateParameter("GravityModifier", (double)prim.GravityModifier));
2212 parameters.Add(_Database.CreateParameter("Friction", (double)prim.Friction)); 2245 parameters.Add(_Database.CreateParameter("Friction", (double)prim.Friction));
2213 parameters.Add(_Database.CreateParameter("Restitution", (double)prim.Restitution)); 2246 parameters.Add(_Database.CreateParameter("Restitution", (double)prim.Restitution));
2247 parameters.Add(_Database.CreateParameter("RotationAxisLocks", prim.RotationAxisLocks));
2214 2248
2215 return parameters.ToArray(); 2249 return parameters.ToArray();
2216 } 2250 }
2217 2251
2218 /// <summary> 2252 /// <summary>
2219 /// Creates the primshape parameters for stroing in DB. 2253 /// Creates the primshape parameters for storing in DB.
2220 /// </summary> 2254 /// </summary>
2221 /// <param name="prim">Basic data of SceneObjectpart prim.</param> 2255 /// <param name="prim">Basic data of SceneObjectpart prim.</param>
2222 /// <param name="sceneGroupID">The scene group ID.</param> 2256 /// <param name="sceneGroupID">The scene group ID.</param>
diff --git a/OpenSim/Data/PGSQL/Resources/RegionStore.migrations b/OpenSim/Data/PGSQL/Resources/RegionStore.migrations
index c085939..948d177 100644
--- a/OpenSim/Data/PGSQL/Resources/RegionStore.migrations
+++ b/OpenSim/Data/PGSQL/Resources/RegionStore.migrations
@@ -1195,3 +1195,19 @@ CREATE TABLE bakedterrain
1195 ); 1195 );
1196 1196
1197COMMIT; 1197COMMIT;
1198
1199:VERSION 45 #---- Add RezzerID filed in table prims
1200
1201BEGIN TRANSACTION;
1202
1203ALTER TABLE prims ADD "RezzerID" uuid NULL;
1204
1205COMMIT;
1206
1207:VERSION 46 #---- Add physics inertia data to table prims
1208
1209BEGIN TRANSACTION;
1210
1211ALTER TABLE prims ADD "PhysInertia" TEXT;
1212
1213COMMIT;