Open Tampa opened 5 years ago
I suspect the problem is the database connection string is missing "Old Guids=true;" at the end.
It's not setup to use anything but the simulators database. Connected the simulator to a central database, same error. Deleted and created the Gloebit tables from scratch on the central database and now it works flawlessly. Not entirely sure what the problem was as I even tried the master dev dll from the downloads section.
In the past, usually a GUID error was from the connection string missing "Old Guids=true;" as @kcozens mentioned above.
There might be something we can test early on and wrap in a try/catch to disable Gloebit if it fails rather than crash everything. Not sure off the top of my head.
That would be good, because as is now the stacktrace does not even show up in the logs as it is a hard crash. Like I said, normally modules should fail without killing the main process so long as the failure otherwise has not adverse effects on the simulator.
Compiled from Tampa:master Stacktrace non-graceful termination
Module failures should not cause main process termination, any thoughts?
^[[57;1H^[[57;1HRegion (root) # ^[[57;17H^[[57;17H^[[57;17H^[[57;1HRegion (root) # ^[[57;17H^[[57;17H[ERROR] FATAL UNHANDLED EXCEPTION: System.FormatException: Unrecognized Guid format. at System.Guid+GuidResult.SetFailure (System.Guid+ParseFailureKind failure, System.String failureMessageID, System.Object failureMessageFormatArgument, System.String failureArgumentName, $ at System.Guid+GuidResult.SetFailure (System.Guid+ParseFailureKind failure, System.String failureMessageID) [0x00000] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at System.Guid.TryParseGuid (System.String g, System.Guid+GuidStyles flags, System.Guid+GuidResult& result) [0x00020] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at System.Guid..ctor (System.String g) [0x00029] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at MySql.Data.Types.MySqlGuid.MySql.Data.Types.IMySqlValue.ReadValue (MySql.Data.MySqlClient.MySqlPacket packet, System.Int64 length, System.Boolean nullVal) [0x00052] in <0004ab8b375b422$ at MySql.Data.MySqlClient.NativeDriver.ReadColumnValue (System.Int32 index, MySql.Data.MySqlClient.MySqlField field, MySql.Data.Types.IMySqlValue valObject) [0x00050] in <0004ab8b375b422f$ at MySql.Data.MySqlClient.Driver.ReadColumnValue (System.Int32 index, MySql.Data.MySqlClient.MySqlField field, MySql.Data.Types.IMySqlValue value) [0x00000] in <0004ab8b375b422f9000ac25a6$ at MySql.Data.MySqlClient.ResultSet.ReadColumnData (System.Boolean outputParms) [0x00004] in <0004ab8b375b422f9000ac25a68089d9>:0 at MySql.Data.MySqlClient.ResultSet.NextRow (System.Data.CommandBehavior behavior) [0x00075] in <0004ab8b375b422f9000ac25a68089d9>:0 at MySql.Data.MySqlClient.MySqlDataReader.Read () [0x00023] in <0004ab8b375b422f9000ac25a68089d9>:0 at OpenSim.Data.MySQL.MySQLGenericTableHandler
1[T].DoQueryWithConnection (MySql.Data.MySqlClient.MySqlCommand cmd, MySql.Data.MySqlClient.MySqlConnection dbcon) [0x002db] in <e2c9d8e93af$ at OpenSim.Data.MySQL.MySQLGenericTableHandler1[T].DoQuery (MySql.Data.MySqlClient.MySqlCommand cmd) [0x00023] in <e2c9d8e93af04212b2088ba35f915bcf>:0 at OpenSim.Data.MySQL.MySQLGenericTableHandler
1[T].Get (System.String[] fields, System.String[] keys, System.String options) [0x000be] in1[T].Get (System.String[] fields, System.String[] keys) [0x00001] in <e2c9d8e93af04212b2088ba35f915bcf>:0 at Gloebit.GloebitMoneyModule.GloebitUser.Get (System.String appKeyStr, System.String agentIdStr) [0x0008b] in <cbb1828316304991b76dd8d467c45b06>:0 at Gloebit.GloebitMoneyModule.GloebitUser.Get (System.String appKeyStr, OpenMetaverse.UUID agentID) [0x0000f] in <cbb1828316304991b76dd8d467c45b06>:0 at Gloebit.GloebitMoneyModule.GloebitMoneyModule+<>c__DisplayClass116_0.<OnCompleteMovementToRegion>b__0 (System.Object <p0>) [0x00057] in <cbb1828316304991b76dd8d467c45b06>:0 at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context (System.Object state) [0x00007] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preser$ at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCt$ at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00021] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <e29f59307e5e4e33ab73bb6530764ec9>:0 at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <e29f59307e5e4e33ab73bb6530764ec9>:0 ^[[?1l^[>^[[39;49m