[Opensim-dev] Fwd: trouble with appearance persistence (r4004)

Kyle Hamilton aerowolf at gmail.com
Wed Mar 26 12:28:52 UTC 2008


justincc clued me in that this version I was testing wasn't truly
r4004 (I must have checked out a release tag without remembering), but
the problem does still exist with the true trunk.  He also said that
mw doesn't monitor -users, so I'm forwarding here.

My environment is MacOSX 10.5.2, Mono 1.9 (tarball), x86.

Please see the tag end of the forwarded message for the log from trunk r4004.

-Kyle H

---------- Forwarded message ----------
From: Kyle Hamilton <aerowolf at gmail.com>
Date: Wed, Mar 26, 2008 at 4:46 AM
Subject: trouble with appearance persistence (r4004)
To: opensim-users at lists.berlios.de


I'm trying to use appearance persistence in r4004, but I seem to be
 running into a trouble that it's hard-coded to use MySQL (I'm using
 SQLite).  In my OpenSim.ini, I have all MySQL lines commented out.

 It starts up fine, but once I try to log in Test User, I get an exception:

 Region# :
 04:38:36 - [LOGIN]: Client Version Second Life Release 1.19.0.5 for Test User
 04:38:36 - [LOGIN]: Authenticating Test User
 04:38:36 - [INVENTORY]: Found root folder for user with ID
 f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be.  Retrieving inventory contents.
 04:38:36 - [CONNECTION DEBUGGING]: Setting up CAPS handler for
 f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be at
 3fb8eb16-4c46-401a-823b-4cf91cb5
 04:38:36 - [CAPS]: Registering CAPS handlers
 04:38:36 - [CONNECTION DEBUGGING]: Creating new circuit code
 (314156373) for f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be
 04:38:36 - [SQLITE]: Syncing user database: 1 users stored
 04:38:37 - [UDPSERVER]: Adding New Client
 04:38:37 - [CLIENT]: Started up new client thread to handle incoming request
 04:38:37 - [CLIENT]: Got authenticated connection from 127.0.0.1:50971
 04:38:37 - [CLIENT]: Adding viewer agent to scene
 04:38:37 - [CONNECTION DEBUGGING]: Creating new client for
 f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be
 04:38:37 - [GROUP]: Adding Test User to OpenSimulator Tester group
 [APPLICATION]:
 APPLICATION EXCEPTION DETECTED: System.UnhandledExceptionEventArgs

 Exception: System.ArgumentException: Keyword not supported.
 Parameter name: URI
  at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey
 (System.String key) [0x00000]
  at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue
 (System.String keyword, System.Object value) [0x00000]
  at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item
 (System.String key, System.Object value) [0x00000]
  at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString
 (System.String value) [0x00000]
  at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor
 (System.String connectionString) [0x00000]
  at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString
 (System.String value) [0x00000]
  at MySql.Data.MySqlClient.MySqlConnection..ctor (System.String
 connectionString) [0x00000]
  at (wrapper remoting-invoke-with-check)
 MySql.Data.MySqlClient.MySqlConnection:.ctor (string)
  at OpenSim.Framework.Data.MySQLDatabaseMapper.GetNewConnection () [0x00000]
  at TribalMedia.Framework.Data.BaseTableMapper.WithConnection
 (System.Action`1 action) [0x00000]
  at TribalMedia.Framework.Data.BaseTableMapper`2[OpenSim.Region.Environment.Modules.AppearanceRowMapper,System.Guid].TryGetValue
 (Guid primaryKey,
 OpenSim.Region.Environment.Modules.AppearanceRowMapper& value)
 [0x00000]
  at OpenSim.Region.Environment.Modules.AppearanceTableMapper.TryGetValue
 (Guid presenceID, OpenSim.Region.Environment.Scenes.AvatarAppearance&
 val) [0x00000]
  at OpenSim.Region.Environment.Modules.AvatarFactoryModule.CheckDatabase
 (LLUUID avatarId) [0x00000]
  at OpenSim.Region.Environment.Modules.AvatarFactoryModule.TryGetAvatarAppearance
 (LLUUID avatarId, OpenSim.Region.Environment.Scenes.AvatarAppearance&
 appearance) [0x00000]
  at OpenSim.Region.Environment.Scenes.Scene.GetAvatarAppearance
 (IClientAPI client,
 OpenSim.Region.Environment.Scenes.AvatarAppearance& appearance)
 [0x00000]
  at OpenSim.Region.Environment.Scenes.Scene.CreateAndAddScenePresence
 (IClientAPI client, Boolean child) [0x00000]
  at OpenSim.Region.Environment.Scenes.Scene.AddNewClient (IClientAPI
 client, Boolean child) [0x00000]
  at OpenSim.Region.ClientStack.ClientView.InitNewClient () [0x00000]
  at OpenSim.Region.ClientStack.ClientView.AuthUser () [0x00000]

 Application is terminating: True

 The apparent problem is:
 appearance_connection_string = "URI=file:Appearance.db,version=3";

 This is a valid connection string for SQLite, but not MySQL.

 I have tried adding:
 appearance_plugin="OpenSim.Framework.Data.SQLite.dll"

 but it's not apparently recognized.  The asset_database line is:
 asset_database = "sqlite"

 This exception does not occur if I have:
 appearance_persist = false

 I'm given to understand that since I've been "contaminated" by the GPL
 and membership to sldev, I cannot submit patches.

 I would prefer not to have to run an instance of MySQL on my machine.

 -Kyle H

[[appended: the log from r4004 trunk]]

05:21:43 - [LOGIN]: Received login request message from user Test User
05:21:43 - [LOGIN]: Client version: Second Life Release 1.19.0.5
05:21:43 - [LOGIN]: Client requested start location: last
05:21:43 - [LOGIN]: Authenticating Test User
05:21:43 - [INVENTORY]: Found root folder for user with ID
f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be.  Retrieving inventory contents.
05:21:43 - [CAPS]: Sending new CAPS seed url
http://127.0.0.1:9000/CAPS/e00b33cd-df7c-4921-8174-d3b902790000/ to
client f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be
05:21:43 - [LOGIN]: Telling region kyanha @ 255,255 (127.0.0.1:9000)
to expect user connection
05:21:43 - [CAPS]: Setting up CAPS handler for root agent
f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be in kyanha
05:21:43 - [CONNECTION DEBUGGING]: Creating new circuit code
(314156373) for avatar f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be at kyanha
05:21:43 - [SQLITE]: Syncing user database: 1 users stored
05:21:43 - [LOGIN]: Authentication of user Test User successful.
Sending response to client.
05:21:45 - [UDPSERVER]: Adding New Client
05:21:45 - [CLIENT]: Started up new client thread to handle incoming request
05:21:45 - [CLIENT]: Got authenticated connection from 127.0.0.1:51034
05:21:45 - [CLIENT]: Adding viewer agent to scene
05:21:45 - [CONNECTION DEBUGGING]: Creating new client for
f94a3dc1-d7b4-4ee7-9c1b-8e4acf77b4be at kyanha
05:21:45 - [GROUP]: Adding Test User to OpenSimulator Tester group
05:21:45 - [REGION]: Add New Scene Presence
[APPLICATION]:
APPLICATION EXCEPTION DETECTED: System.UnhandledExceptionEventArgs

Exception: System.ArgumentException: Keyword not supported.
Parameter name: URI
 at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.GetKey
(System.String key) [0x00000]
 at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.SetValue
(System.String keyword, System.Object value) [0x00000]
 at MySql.Data.MySqlClient.MySqlConnectionStringBuilder.set_Item
(System.String key, System.Object value) [0x00000]
 at System.Data.Common.DbConnectionStringBuilder.set_ConnectionString
(System.String value) [0x00000]
 at MySql.Data.MySqlClient.MySqlConnectionStringBuilder..ctor
(System.String connectionString) [0x00000]
 at MySql.Data.MySqlClient.MySqlConnection.set_ConnectionString
(System.String value) [0x00000]
 at MySql.Data.MySqlClient.MySqlConnection..ctor (System.String
connectionString) [0x00000]
 at (wrapper remoting-invoke-with-check)
MySql.Data.MySqlClient.MySqlConnection:.ctor (string)
 at OpenSim.Framework.Data.MySQLMapper.MySQLDatabaseMapper.GetNewConnection
() [0x00000]
 at OpenSim.Framework.Data.Base.BaseTableMapper.WithConnection
(System.Action`1 action) [0x00000]
 at OpenSim.Framework.Data.Base.BaseTableMapper`2[OpenSim.Region.Modules.AvatarFactory.AppearanceRowMapper,System.Guid].TryGetValue
(Guid primaryKey,
OpenSim.Region.Modules.AvatarFactory.AppearanceRowMapper& value)
[0x00000]
 at OpenSim.Region.Modules.AvatarFactory.AppearanceTableMapper.TryGetValue
(Guid presenceID, OpenSim.Region.Environment.Scenes.AvatarAppearance&
val) [0x00000]
 at OpenSim.Region.Modules.AvatarFactory.AvatarFactoryModule.CheckDatabase
(LLUUID avatarId) [0x00000]
 at OpenSim.Region.Modules.AvatarFactory.AvatarFactoryModule.TryGetAvatarAppearance
(LLUUID avatarId, OpenSim.Region.Environment.Scenes.AvatarAppearance&
appearance) [0x00000]
 at OpenSim.Region.Environment.Scenes.Scene.GetAvatarAppearance
(IClientAPI client,
OpenSim.Region.Environment.Scenes.AvatarAppearance& appearance)
[0x00000]
 at OpenSim.Region.Environment.Scenes.Scene.CreateAndAddScenePresence
(IClientAPI client, Boolean child) [0x00000]
 at OpenSim.Region.Environment.Scenes.Scene.AddNewClient (IClientAPI
client, Boolean child) [0x00000]
 at OpenSim.Region.ClientStack.ClientView.InitNewClient () [0x00000]
 at OpenSim.Region.ClientStack.ClientView.AuthUser () [0x00000]

Application is terminating: True



More information about the Opensim-dev mailing list