diff options
author | Justin Clarke Casey | 2009-03-09 17:55:08 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2009-03-09 17:55:08 +0000 |
commit | 5a6bc26600c80d8e838bafdde4df970841c6c285 (patch) | |
tree | e85ab9419eb14c03601b02abfb455ee46e5d671e /OpenSim/Framework/Communications | |
parent | * Added TXXX in front of unit tests to make sure they are running in the corr... (diff) | |
download | opensim-SC_OLD-5a6bc26600c80d8e838bafdde4df970841c6c285.zip opensim-SC_OLD-5a6bc26600c80d8e838bafdde4df970841c6c285.tar.gz opensim-SC_OLD-5a6bc26600c80d8e838bafdde4df970841c6c285.tar.bz2 opensim-SC_OLD-5a6bc26600c80d8e838bafdde4df970841c6c285.tar.xz |
* Address http://opensimulator.org/mantis/view.php?id=3207
* A saved archive now immediately expires the data in the asset cache that it used, rather than retaining all the assets (esp textures) in the cache.
* This is an imperfect solution. Ideally we would only expire the assets newly requested for the archive (not existing ones). But doing that would require a lot more
restructuring.
* I don't believe there are any locking issues due to the locking performed by the underlying memory cache, but please report any issues.
Diffstat (limited to 'OpenSim/Framework/Communications')
-rw-r--r-- | OpenSim/Framework/Communications/Cache/AssetCache.cs | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/OpenSim/Framework/Communications/Cache/AssetCache.cs b/OpenSim/Framework/Communications/Cache/AssetCache.cs index 800c997..30f7ddf 100644 --- a/OpenSim/Framework/Communications/Cache/AssetCache.cs +++ b/OpenSim/Framework/Communications/Cache/AssetCache.cs | |||
@@ -46,8 +46,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
46 | /// This class actually encapsulates two largely separate mechanisms. One mechanism fetches assets either | 46 | /// This class actually encapsulates two largely separate mechanisms. One mechanism fetches assets either |
47 | /// synchronously or async and passes the data back to the requester. The second mechanism fetches assets and | 47 | /// synchronously or async and passes the data back to the requester. The second mechanism fetches assets and |
48 | /// sends packetised data directly back to the client. The only point where they meet is AssetReceived() and | 48 | /// sends packetised data directly back to the client. The only point where they meet is AssetReceived() and |
49 | /// AssetNotFound(), which means they do share the same asset and texture caches.I agr | 49 | /// AssetNotFound(), which means they do share the same asset and texture caches. |
50 | |||
51 | public class AssetCache : IAssetCache | 50 | public class AssetCache : IAssetCache |
52 | { | 51 | { |
53 | 52 | ||
@@ -401,9 +400,7 @@ namespace OpenSim.Framework.Communications.Cache | |||
401 | m_memcache.AddOrUpdate(assetInf.FullID, assetInf, TimeSpan.FromHours(24)); | 400 | m_memcache.AddOrUpdate(assetInf.FullID, assetInf, TimeSpan.FromHours(24)); |
402 | 401 | ||
403 | if (StatsManager.SimExtraStats != null) | 402 | if (StatsManager.SimExtraStats != null) |
404 | { | ||
405 | StatsManager.SimExtraStats.AddAsset(assetInf); | 403 | StatsManager.SimExtraStats.AddAsset(assetInf); |
406 | } | ||
407 | 404 | ||
408 | if (RequestedAssets.ContainsKey(assetInf.FullID)) | 405 | if (RequestedAssets.ContainsKey(assetInf.FullID)) |
409 | { | 406 | { |