* Introduce a new "default" option for asset_database in the [STORAGE] section

* This option makes OpenSim use the usual db based asset service in standalone, and the grid based one in grid mode
* The other options can (local, grid, etc) can still be used explicitly as before
* Also change OpenSim.ini.example and the surrounding explanative text
0.6.3-post-fixes
Justin Clarke Casey 2009-02-04 18:56:12 +00:00
parent 3206f70cd9
commit a1da605706
5 changed files with 19 additions and 4 deletions

View File

@ -43,6 +43,7 @@ namespace OpenSim.Framework.Communications.Cache
} }
m_dir = dir; m_dir = dir;
} }
public override void StoreAsset(AssetBase asset) public override void StoreAsset(AssetBase asset)
{ {
byte[] idBytes = asset.Metadata.FullID.Guid.ToByteArray(); byte[] idBytes = asset.Metadata.FullID.Guid.ToByteArray();

View File

@ -200,7 +200,7 @@ namespace OpenSim
config.Set("startup_console_commands_file", String.Empty); config.Set("startup_console_commands_file", String.Empty);
config.Set("shutdown_console_commands_file", String.Empty); config.Set("shutdown_console_commands_file", String.Empty);
config.Set("DefaultScriptEngine", "XEngine"); config.Set("DefaultScriptEngine", "XEngine");
config.Set("asset_database", "local"); config.Set("asset_database", "default");
config.Set("clientstack_plugin", "OpenSim.Region.ClientStack.LindenUDP.dll"); config.Set("clientstack_plugin", "OpenSim.Region.ClientStack.LindenUDP.dll");
// life doesn't really work without this // life doesn't really work without this
config.Set("EventQueue", true); config.Set("EventQueue", true);

View File

@ -269,8 +269,12 @@ namespace OpenSim
/// </summary> /// </summary>
protected virtual void InitialiseAssetCache() protected virtual void InitialiseAssetCache()
{ {
// If the assetcache is set to default, then use the grid asset service in grid mode and the local database
// based asset service in standalone mode
IAssetServer assetServer; IAssetServer assetServer;
if (m_configSettings.AssetStorage == "grid") if (m_configSettings.AssetStorage == "grid"
|| (m_configSettings.AssetStorage == "default" && false == m_configSettings.Standalone))
{ {
assetServer = new GridAssetClient(m_networkServersInfo.AssetURL); assetServer = new GridAssetClient(m_networkServersInfo.AssetURL);
} }

View File

@ -495,6 +495,7 @@ namespace OpenSim.Region.Environment.Modules.World.Terrain
m_commander.ProcessConsoleCommand("help", new string[0]); m_commander.ProcessConsoleCommand("help", new string[0]);
return; return;
} }
string[] tmpArgs = new string[args.Length - 2]; string[] tmpArgs = new string[args.Length - 2];
int i; int i;
for (i = 2; i < args.Length; i++) for (i = 2; i < args.Length; i++)

View File

@ -91,8 +91,17 @@
; If you're running a region server connecting to a grid, you probably want grid mode, since this will use the ; If you're running a region server connecting to a grid, you probably want grid mode, since this will use the
; grid asset server. If you select local in grid mode, then you will use a database as specified in asset_plugin to store assets ; grid asset server. If you select local in grid mode, then you will use a database as specified in asset_plugin to store assets
; locally. This will mean you won't be able to take items using your assets to other people's regions. ; locally. This will mean you won't be able to take items using your assets to other people's regions.
asset_database = "local"
;asset_database = "grid" ; asset_database can be default, local or grid. This controls where assets (textures, scripts, etc.) are stored for your region
;
; If set to default, then
; In standalone mode the local database based asset service will be used
; In grid mode the grid asset service will be used for asset storage
; This is probably the setting that you want.
;
; If set to local then the local database based asset service will be used in standalone and grid modes
; If set to grid then the grid based asset service will be used in standalone and grid modes
asset_database = "default"
; Persistence of changed objects happens during regular sweeps. The following control that behaviour to ; Persistence of changed objects happens during regular sweeps. The following control that behaviour to
; prevent frequently changing objects from heavily loading the region data store. ; prevent frequently changing objects from heavily loading the region data store.