aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorJohn Hurliman2009-10-27 01:46:14 -0700
committerJohn Hurliman2009-10-27 01:46:14 -0700
commitb498693cff9b044e8ab3c7a88a18e9d67f16461b (patch)
treeda3ad1c4085eb4c4b16c0ba84d97f5938bc6763e /OpenSim
parent* Converts ClientManager.ForEach() (and as a result, Scene.ForEachClient()) t... (diff)
downloadopensim-SC_OLD-b498693cff9b044e8ab3c7a88a18e9d67f16461b.zip
opensim-SC_OLD-b498693cff9b044e8ab3c7a88a18e9d67f16461b.tar.gz
opensim-SC_OLD-b498693cff9b044e8ab3c7a88a18e9d67f16461b.tar.bz2
opensim-SC_OLD-b498693cff9b044e8ab3c7a88a18e9d67f16461b.tar.xz
* Tweak to region module loading to check for a matching constructor first instead of throwing and catching exceptions
* Commenting out the MySQL startup sequence that cleans out dropped attachments under the advice that it is no longer relevant. If anything, it could be brought back as a database cleanup console command * Updated to the latest libomv 0.8.0-pre. UUID.TryParse() will no longer throw and catch exceptions for most failed UUID parses
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs13
-rw-r--r--OpenSim/Data/MySQL/MySQLLegacyRegionData.cs32
-rw-r--r--OpenSim/Tools/pCampBot/PhysicsBot.cs7
3 files changed, 29 insertions, 23 deletions
diff --git a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
index ddc37ed..6c0c74d 100644
--- a/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
+++ b/OpenSim/ApplicationPlugins/RegionModulesController/RegionModulesControllerPlugin.cs
@@ -341,14 +341,15 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
341 341
342 // Actually load it 342 // Actually load it
343 INonSharedRegionModule module = null; 343 INonSharedRegionModule module = null;
344 try 344
345 { 345 Type[] ctorParamTypes = new Type[ctorArgs.Length];
346 for (int i = 0; i < ctorParamTypes.Length; i++)
347 ctorParamTypes[i] = ctorArgs[i].GetType();
348
349 if (node.Type.GetConstructor(ctorParamTypes) != null)
346 module = (INonSharedRegionModule)Activator.CreateInstance(node.Type, ctorArgs); 350 module = (INonSharedRegionModule)Activator.CreateInstance(node.Type, ctorArgs);
347 } 351 else
348 catch
349 {
350 module = (INonSharedRegionModule)Activator.CreateInstance(node.Type); 352 module = (INonSharedRegionModule)Activator.CreateInstance(node.Type);
351 }
352 353
353 // Check for replaceable interfaces 354 // Check for replaceable interfaces
354 Type replaceableInterface = module.ReplaceableInterface; 355 Type replaceableInterface = module.ReplaceableInterface;
diff --git a/OpenSim/Data/MySQL/MySQLLegacyRegionData.cs b/OpenSim/Data/MySQL/MySQLLegacyRegionData.cs
index c07963c..a807948 100644
--- a/OpenSim/Data/MySQL/MySQLLegacyRegionData.cs
+++ b/OpenSim/Data/MySQL/MySQLLegacyRegionData.cs
@@ -66,22 +66,26 @@ namespace OpenSim.Data.MySQL
66 Migration m = new Migration(m_Connection, assem, "RegionStore"); 66 Migration m = new Migration(m_Connection, assem, "RegionStore");
67 m.Update(); 67 m.Update();
68 68
69 // NOTE: This is a very slow query that times out on regions with a lot of prims.
70 // I'm told that it is no longer relevant so it's commented out now, but if it
71 // is relevant it should be added as a console command instead of part of the
72 // startup phase
69 // Clean dropped attachments 73 // Clean dropped attachments
70 // 74 //
71 try 75 //try
72 { 76 //{
73 using (MySqlCommand cmd = m_Connection.CreateCommand()) 77 // using (MySqlCommand cmd = m_Connection.CreateCommand())
74 { 78 // {
75 cmd.CommandText = "delete from prims, primshapes using prims " + 79 // cmd.CommandText = "delete from prims, primshapes using prims " +
76 "left join primshapes on prims.uuid = primshapes.uuid " + 80 // "left join primshapes on prims.uuid = primshapes.uuid " +
77 "where PCode = 9 and State <> 0"; 81 // "where PCode = 9 and State <> 0";
78 ExecuteNonQuery(cmd); 82 // ExecuteNonQuery(cmd);
79 } 83 // }
80 } 84 //}
81 catch (MySqlException ex) 85 //catch (MySqlException ex)
82 { 86 //{
83 m_log.Error("[REGION DB]: Error cleaning up dropped attachments: " + ex.Message); 87 // m_log.Error("[REGION DB]: Error cleaning up dropped attachments: " + ex.Message);
84 } 88 //}
85 } 89 }
86 90
87 private IDataReader ExecuteReader(MySqlCommand c) 91 private IDataReader ExecuteReader(MySqlCommand c)
diff --git a/OpenSim/Tools/pCampBot/PhysicsBot.cs b/OpenSim/Tools/pCampBot/PhysicsBot.cs
index 426ef29..38986a2 100644
--- a/OpenSim/Tools/pCampBot/PhysicsBot.cs
+++ b/OpenSim/Tools/pCampBot/PhysicsBot.cs
@@ -154,7 +154,7 @@ namespace pCampBot
154 client.Network.OnConnected += new NetworkManager.ConnectedCallback(this.Network_OnConnected); 154 client.Network.OnConnected += new NetworkManager.ConnectedCallback(this.Network_OnConnected);
155 client.Network.OnSimConnected += new NetworkManager.SimConnectedCallback(this.Network_OnConnected); 155 client.Network.OnSimConnected += new NetworkManager.SimConnectedCallback(this.Network_OnConnected);
156 client.Network.OnDisconnected += new NetworkManager.DisconnectedCallback(this.Network_OnDisconnected); 156 client.Network.OnDisconnected += new NetworkManager.DisconnectedCallback(this.Network_OnDisconnected);
157 client.Objects.OnNewPrim += Objects_NewPrim; 157 client.Objects.ObjectUpdate += Objects_NewPrim;
158 //client.Assets.OnAssetReceived += Asset_ReceivedCallback; 158 //client.Assets.OnAssetReceived += Asset_ReceivedCallback;
159 if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name")) 159 if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name"))
160 { 160 {
@@ -369,8 +369,10 @@ namespace pCampBot
369 } 369 }
370 } 370 }
371 371
372 public void Objects_NewPrim(Simulator simulator, Primitive prim, ulong regionHandle, ushort timeDilation) 372 public void Objects_NewPrim(object sender, PrimEventArgs args)
373 { 373 {
374 Primitive prim = args.Prim;
375
374 if (prim != null) 376 if (prim != null)
375 { 377 {
376 if (prim.Textures != null) 378 if (prim.Textures != null)
@@ -396,7 +398,6 @@ namespace pCampBot
396 client.Assets.RequestImage(prim.Sculpt.SculptTexture, ImageType.Normal, Asset_TextureCallback_Texture); 398 client.Assets.RequestImage(prim.Sculpt.SculptTexture, ImageType.Normal, Asset_TextureCallback_Texture);
397 } 399 }
398 } 400 }
399
400 } 401 }
401 402
402 403