diff options
author | Justin Clark-Casey (justincc) | 2010-03-12 20:29:17 +0000 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2010-03-12 20:29:17 +0000 |
commit | aad17e751383069b799c6a78a3ac4e0ca1020a4d (patch) | |
tree | 80b18150e5e91711cb25cf1dc64b1d1a6bcb6182 | |
parent | Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim (diff) | |
download | opensim-SC_OLD-aad17e751383069b799c6a78a3ac4e0ca1020a4d.zip opensim-SC_OLD-aad17e751383069b799c6a78a3ac4e0ca1020a4d.tar.gz opensim-SC_OLD-aad17e751383069b799c6a78a3ac4e0ca1020a4d.tar.bz2 opensim-SC_OLD-aad17e751383069b799c6a78a3ac4e0ca1020a4d.tar.xz |
Simplify database setup and remove migration problems by moving all sqlite config-include settings to a separate file for standalone
Update information in StandaloneCommon.ini.example to reflect this
Remove ISharedRegionModule interfaces from all SimianGrid connector classes temporarily since this stopped standalone from working (due to absence of AssetURI settings, etc.).
Solution here may be to create separate region module connectors as done by local/grid/hypergrid so that loading can be controlled via include files
Or otherwise work out how to stop these modules from being loaded for all OpenSim invocations
14 files changed, 43 insertions, 22 deletions
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianAssetServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianAssetServiceConnector.cs index 9fb7723..201bc70 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianAssetServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianAssetServiceConnector.cs | |||
@@ -46,7 +46,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
46 | /// Connects to the SimianGrid asset service | 46 | /// Connects to the SimianGrid asset service |
47 | /// </summary> | 47 | /// </summary> |
48 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 48 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
49 | public class SimianAssetServiceConnector : IAssetService, ISharedRegionModule | 49 | public class SimianAssetServiceConnector : IAssetService |
50 | { | 50 | { |
51 | private static readonly ILog m_log = | 51 | private static readonly ILog m_log = |
52 | LogManager.GetLogger( | 52 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianAuthenticationServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianAuthenticationServiceConnector.cs index ec66341..25e04d7 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianAuthenticationServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianAuthenticationServiceConnector.cs | |||
@@ -44,7 +44,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
44 | /// Connects authentication/authorization to the SimianGrid backend | 44 | /// Connects authentication/authorization to the SimianGrid backend |
45 | /// </summary> | 45 | /// </summary> |
46 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 46 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
47 | public class SimianAuthenticationServiceConnector : IAuthenticationService, ISharedRegionModule | 47 | public class SimianAuthenticationServiceConnector : IAuthenticationService |
48 | { | 48 | { |
49 | private static readonly ILog m_log = | 49 | private static readonly ILog m_log = |
50 | LogManager.GetLogger( | 50 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianAvatarServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianAvatarServiceConnector.cs index 220f143..08403b9 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianAvatarServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianAvatarServiceConnector.cs | |||
@@ -48,7 +48,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
48 | /// Connects avatar appearance data to the SimianGrid backend | 48 | /// Connects avatar appearance data to the SimianGrid backend |
49 | /// </summary> | 49 | /// </summary> |
50 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 50 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
51 | public class SimianAvatarServiceConnector : IAvatarService, ISharedRegionModule | 51 | public class SimianAvatarServiceConnector : IAvatarService |
52 | { | 52 | { |
53 | private static readonly ILog m_log = | 53 | private static readonly ILog m_log = |
54 | LogManager.GetLogger( | 54 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs index 3952a8c..856381d 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianFriendsServiceConnector.cs | |||
@@ -47,7 +47,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
47 | /// Stores and retrieves friend lists from the SimianGrid backend | 47 | /// Stores and retrieves friend lists from the SimianGrid backend |
48 | /// </summary> | 48 | /// </summary> |
49 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 49 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
50 | public class SimianFriendsServiceConnector : IFriendsService, ISharedRegionModule | 50 | public class SimianFriendsServiceConnector : IFriendsService |
51 | { | 51 | { |
52 | private static readonly ILog m_log = | 52 | private static readonly ILog m_log = |
53 | LogManager.GetLogger( | 53 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs index 16819d1..c375076 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianGridServiceConnector.cs | |||
@@ -51,7 +51,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
51 | /// backend | 51 | /// backend |
52 | /// </summary> | 52 | /// </summary> |
53 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 53 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
54 | public class SimianGridServiceConnector : IGridService, ISharedRegionModule | 54 | public class SimianGridServiceConnector : IGridService |
55 | { | 55 | { |
56 | private static readonly ILog m_log = | 56 | private static readonly ILog m_log = |
57 | LogManager.GetLogger( | 57 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianInventoryServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianInventoryServiceConnector.cs index c812899..9879295 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianInventoryServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianInventoryServiceConnector.cs | |||
@@ -61,7 +61,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
61 | /// Connects avatar inventories to the SimianGrid backend | 61 | /// Connects avatar inventories to the SimianGrid backend |
62 | /// </summary> | 62 | /// </summary> |
63 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 63 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
64 | public class SimianInventoryServiceConnector : IInventoryService, ISharedRegionModule | 64 | public class SimianInventoryServiceConnector : IInventoryService |
65 | { | 65 | { |
66 | private static readonly ILog m_log = | 66 | private static readonly ILog m_log = |
67 | LogManager.GetLogger( | 67 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs index 65de1c5..45d1824 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianPresenceServiceConnector.cs | |||
@@ -51,7 +51,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
51 | /// message routing) to the SimianGrid backend | 51 | /// message routing) to the SimianGrid backend |
52 | /// </summary> | 52 | /// </summary> |
53 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 53 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
54 | public class SimianPresenceServiceConnector : IPresenceService, ISharedRegionModule | 54 | public class SimianPresenceServiceConnector : IPresenceService |
55 | { | 55 | { |
56 | private static readonly ILog m_log = | 56 | private static readonly ILog m_log = |
57 | LogManager.GetLogger( | 57 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs b/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs index 1e19982..32f17ae 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianProfiles.cs | |||
@@ -60,7 +60,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
60 | /// backend | 60 | /// backend |
61 | /// </summary> | 61 | /// </summary> |
62 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 62 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
63 | public class SimianProfiles : INonSharedRegionModule | 63 | public class SimianProfiles |
64 | { | 64 | { |
65 | private static readonly ILog m_log = | 65 | private static readonly ILog m_log = |
66 | LogManager.GetLogger( | 66 | LogManager.GetLogger( |
diff --git a/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs b/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs index 14097d0..708ced3 100644 --- a/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs +++ b/OpenSim/Services/Connectors/SimianGrid/SimianUserAccountServiceConnector.cs | |||
@@ -47,7 +47,7 @@ namespace OpenSim.Services.Connectors.SimianGrid | |||
47 | /// users) to the SimianGrid backend | 47 | /// users) to the SimianGrid backend |
48 | /// </summary> | 48 | /// </summary> |
49 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] | 49 | [Extension(Path = "/OpenSim/RegionModules", NodeName = "RegionModule")] |
50 | public class SimianUserAccountServiceConnector : IUserAccountService, ISharedRegionModule | 50 | public class SimianUserAccountServiceConnector : IUserAccountService |
51 | { | 51 | { |
52 | private static readonly ILog m_log = | 52 | private static readonly ILog m_log = |
53 | LogManager.GetLogger( | 53 | LogManager.GetLogger( |
diff --git a/OpenSim/Tests/Common/Mock/MockUserAccountService.cs b/OpenSim/Tests/Common/Mock/MockUserAccountService.cs index f5d758a..0769c7a 100644 --- a/OpenSim/Tests/Common/Mock/MockUserAccountService.cs +++ b/OpenSim/Tests/Common/Mock/MockUserAccountService.cs | |||
@@ -34,6 +34,7 @@ namespace OpenSim.Tests.Common.Mock | |||
34 | { | 34 | { |
35 | public class MockUserAccountService : IUserAccountService | 35 | public class MockUserAccountService : IUserAccountService |
36 | { | 36 | { |
37 | |||
37 | public MockUserAccountService(IConfigSource config) {} | 38 | public MockUserAccountService(IConfigSource config) {} |
38 | 39 | ||
39 | public UserAccount GetUserAccount(UUID scopeID, UUID userID) { return new UserAccount(); } | 40 | public UserAccount GetUserAccount(UUID scopeID, UUID userID) { return new UserAccount(); } |
diff --git a/OpenSim/Tests/Common/Setup/SceneSetupHelpers.cs b/OpenSim/Tests/Common/Setup/SceneSetupHelpers.cs index ab3e7cb..864e2aa 100644 --- a/OpenSim/Tests/Common/Setup/SceneSetupHelpers.cs +++ b/OpenSim/Tests/Common/Setup/SceneSetupHelpers.cs | |||
@@ -215,6 +215,9 @@ namespace OpenSim.Tests.Common.Setup | |||
215 | testScene.PhysicsScene | 215 | testScene.PhysicsScene |
216 | = physicsPluginManager.GetPhysicsScene("basicphysics", "ZeroMesher", new IniConfigSource(), "test"); | 216 | = physicsPluginManager.GetPhysicsScene("basicphysics", "ZeroMesher", new IniConfigSource(), "test"); |
217 | 217 | ||
218 | // It's really not a good idea to use static variables as they carry over between tests, leading to | ||
219 | // problems that are extremely hard to debug. Really, these static fields need to be eliminated - | ||
220 | // tests using multiple regions that need to share modules need to find another solution. | ||
218 | m_assetService = null; | 221 | m_assetService = null; |
219 | m_inventoryService = null; | 222 | m_inventoryService = null; |
220 | m_gridService = null; | 223 | m_gridService = null; |
diff --git a/bin/config-include/Standalone.ini b/bin/config-include/Standalone.ini index 3011370..54e11af 100644 --- a/bin/config-include/Standalone.ini +++ b/bin/config-include/Standalone.ini | |||
@@ -32,14 +32,12 @@ | |||
32 | 32 | ||
33 | [AvatarService] | 33 | [AvatarService] |
34 | LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService" | 34 | LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService" |
35 | ConnectionString = "URI=file:avatars.db,version=3" | ||
36 | 35 | ||
37 | [AuthorizationService] | 36 | [AuthorizationService] |
38 | LocalServiceModule = "OpenSim.Services.AuthorizationService.dll:AuthorizationService" | 37 | LocalServiceModule = "OpenSim.Services.AuthorizationService.dll:AuthorizationService" |
39 | 38 | ||
40 | [AuthenticationService] | 39 | [AuthenticationService] |
41 | LocalServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" | 40 | LocalServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" |
42 | ConnectionString = "URI=file:auth.db,version=3" | ||
43 | 41 | ||
44 | [GridService] | 42 | [GridService] |
45 | LocalServiceModule = "OpenSim.Services.GridService.dll:GridService" | 43 | LocalServiceModule = "OpenSim.Services.GridService.dll:GridService" |
@@ -52,7 +50,6 @@ | |||
52 | 50 | ||
53 | [UserAccountService] | 51 | [UserAccountService] |
54 | LocalServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService" | 52 | LocalServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService" |
55 | ConnectionString = "URI=file:userprofiles.db,version=3" | ||
56 | 53 | ||
57 | ;; These are for creating new accounts | 54 | ;; These are for creating new accounts |
58 | AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" | 55 | AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" |
@@ -62,7 +59,6 @@ | |||
62 | 59 | ||
63 | [FriendsService] | 60 | [FriendsService] |
64 | LocalServiceModule = "OpenSim.Services.FriendsService.dll" | 61 | LocalServiceModule = "OpenSim.Services.FriendsService.dll" |
65 | ConnectionString = "URI=file:friends.db,version=3" | ||
66 | 62 | ||
67 | [Friends] | 63 | [Friends] |
68 | Connector = "OpenSim.Services.FriendsService.dll" | 64 | Connector = "OpenSim.Services.FriendsService.dll" |
diff --git a/bin/config-include/StandaloneCommon.ini.example b/bin/config-include/StandaloneCommon.ini.example index 8e21a8c..f89c67a 100644 --- a/bin/config-include/StandaloneCommon.ini.example +++ b/bin/config-include/StandaloneCommon.ini.example | |||
@@ -1,19 +1,24 @@ | |||
1 | ; This is the main configuration file for standalone OpenSim instances | ||
2 | |||
1 | [DatabaseService] | 3 | [DatabaseService] |
2 | ; | 4 | ; |
3 | ;### Choose the DB | 5 | ; ### Choose the DB |
4 | ; | 6 | ; |
5 | ;--- For SQLite | 7 | |
6 | StorageProvider = "OpenSim.Data.SQLite.dll" | 8 | ; SQLite |
7 | ;--- For MySql | 9 | ; Uncomment this line if you want to use sqlite storage |
10 | Include-Storage = "config-include/storage/SQLiteStandalone.ini"; | ||
11 | |||
12 | ; For MySql. | ||
13 | ; Uncomment these lines if you want to use mysql storage | ||
14 | ; Change the connection string to your db details | ||
8 | ;StorageProvider = "OpenSim.Data.MySQL.dll" | 15 | ;StorageProvider = "OpenSim.Data.MySQL.dll" |
9 | ;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;" | 16 | ;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;" |
10 | 17 | ||
11 | [AssetService] | 18 | [AssetService] |
12 | |||
13 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" | 19 | DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" |
14 | AssetLoaderArgs = "assets/AssetSets.xml" | 20 | AssetLoaderArgs = "assets/AssetSets.xml" |
15 | 21 | ||
16 | |||
17 | [Modules] | 22 | [Modules] |
18 | ;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists. | 23 | ;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists. |
19 | ;; Copy the config .example file into your own .ini file and change configs there | 24 | ;; Copy the config .example file into your own .ini file and change configs there |
@@ -35,10 +40,10 @@ | |||
35 | 40 | ||
36 | [GridService] | 41 | [GridService] |
37 | ;; For in-memory region storage (default) | 42 | ;; For in-memory region storage (default) |
38 | StorageProvider = "OpenSim.Data.Null.dll:NullRegionData" | 43 | StorageProvider = "OpenSim.Data.Null.dll:NullRegionData" |
39 | ;;--- For MySql region storage (alternative) | 44 | ;;--- For MySql region storage (alternative) |
40 | ;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData" | 45 | ;StorageProvider = "OpenSim.Data.MySQL.dll:MySqlRegionData" |
41 | ;ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;" | 46 | |
42 | ;; Next, we can specify properties of regions, including default and fallback regions | 47 | ;; Next, we can specify properties of regions, including default and fallback regions |
43 | ;; The syntax is: Region_<RegioName> = "<flags>" | 48 | ;; The syntax is: Region_<RegioName> = "<flags>" |
44 | ;; where <flags> can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut | 49 | ;; where <flags> can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut |
diff --git a/bin/config-include/storage/SQLiteStandalone.ini b/bin/config-include/storage/SQLiteStandalone.ini new file mode 100644 index 0000000..1ce0357 --- /dev/null +++ b/bin/config-include/storage/SQLiteStandalone.ini | |||
@@ -0,0 +1,16 @@ | |||
1 | ; These are the initialization settings for running OpenSim Standalone with an SQLite database | ||
2 | |||
3 | [DatabaseService] | ||
4 | StorageProvider = "OpenSim.Data.SQLite.dll" | ||
5 | |||
6 | [AvatarService] | ||
7 | ConnectionString = "URI=file:avatars.db,version=3" | ||
8 | |||
9 | [AuthenticationService] | ||
10 | ConnectionString = "URI=file:auth.db,version=3" | ||
11 | |||
12 | [UserAccountService] | ||
13 | ConnectionString = "URI=file:userprofiles.db,version=3" | ||
14 | |||
15 | [FriendsService] | ||
16 | ConnectionString = "URI=file:friends.db,version=3" | ||