* 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 parses0.6.8-post-fixes
parent
c75d415648
commit
b498693cff
|
@ -341,14 +341,15 @@ namespace OpenSim.ApplicationPlugins.RegionModulesController
|
|||
|
||||
// Actually load it
|
||||
INonSharedRegionModule module = null;
|
||||
try
|
||||
{
|
||||
|
||||
Type[] ctorParamTypes = new Type[ctorArgs.Length];
|
||||
for (int i = 0; i < ctorParamTypes.Length; i++)
|
||||
ctorParamTypes[i] = ctorArgs[i].GetType();
|
||||
|
||||
if (node.Type.GetConstructor(ctorParamTypes) != null)
|
||||
module = (INonSharedRegionModule)Activator.CreateInstance(node.Type, ctorArgs);
|
||||
}
|
||||
catch
|
||||
{
|
||||
else
|
||||
module = (INonSharedRegionModule)Activator.CreateInstance(node.Type);
|
||||
}
|
||||
|
||||
// Check for replaceable interfaces
|
||||
Type replaceableInterface = module.ReplaceableInterface;
|
||||
|
|
|
@ -66,22 +66,26 @@ namespace OpenSim.Data.MySQL
|
|||
Migration m = new Migration(m_Connection, assem, "RegionStore");
|
||||
m.Update();
|
||||
|
||||
// NOTE: This is a very slow query that times out on regions with a lot of prims.
|
||||
// I'm told that it is no longer relevant so it's commented out now, but if it
|
||||
// is relevant it should be added as a console command instead of part of the
|
||||
// startup phase
|
||||
// Clean dropped attachments
|
||||
//
|
||||
try
|
||||
{
|
||||
using (MySqlCommand cmd = m_Connection.CreateCommand())
|
||||
{
|
||||
cmd.CommandText = "delete from prims, primshapes using prims " +
|
||||
"left join primshapes on prims.uuid = primshapes.uuid " +
|
||||
"where PCode = 9 and State <> 0";
|
||||
ExecuteNonQuery(cmd);
|
||||
}
|
||||
}
|
||||
catch (MySqlException ex)
|
||||
{
|
||||
m_log.Error("[REGION DB]: Error cleaning up dropped attachments: " + ex.Message);
|
||||
}
|
||||
//try
|
||||
//{
|
||||
// using (MySqlCommand cmd = m_Connection.CreateCommand())
|
||||
// {
|
||||
// cmd.CommandText = "delete from prims, primshapes using prims " +
|
||||
// "left join primshapes on prims.uuid = primshapes.uuid " +
|
||||
// "where PCode = 9 and State <> 0";
|
||||
// ExecuteNonQuery(cmd);
|
||||
// }
|
||||
//}
|
||||
//catch (MySqlException ex)
|
||||
//{
|
||||
// m_log.Error("[REGION DB]: Error cleaning up dropped attachments: " + ex.Message);
|
||||
//}
|
||||
}
|
||||
|
||||
private IDataReader ExecuteReader(MySqlCommand c)
|
||||
|
|
|
@ -154,7 +154,7 @@ namespace pCampBot
|
|||
client.Network.OnConnected += new NetworkManager.ConnectedCallback(this.Network_OnConnected);
|
||||
client.Network.OnSimConnected += new NetworkManager.SimConnectedCallback(this.Network_OnConnected);
|
||||
client.Network.OnDisconnected += new NetworkManager.DisconnectedCallback(this.Network_OnDisconnected);
|
||||
client.Objects.OnNewPrim += Objects_NewPrim;
|
||||
client.Objects.ObjectUpdate += Objects_NewPrim;
|
||||
//client.Assets.OnAssetReceived += Asset_ReceivedCallback;
|
||||
if (client.Network.Login(firstname, lastname, password, "pCampBot", "Your name"))
|
||||
{
|
||||
|
@ -369,8 +369,10 @@ namespace pCampBot
|
|||
}
|
||||
}
|
||||
|
||||
public void Objects_NewPrim(Simulator simulator, Primitive prim, ulong regionHandle, ushort timeDilation)
|
||||
public void Objects_NewPrim(object sender, PrimEventArgs args)
|
||||
{
|
||||
Primitive prim = args.Prim;
|
||||
|
||||
if (prim != null)
|
||||
{
|
||||
if (prim.Textures != null)
|
||||
|
@ -396,7 +398,6 @@ namespace pCampBot
|
|||
client.Assets.RequestImage(prim.Sculpt.SculptTexture, ImageType.Normal, Asset_TextureCallback_Texture);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue