diff options
author | Justin Clark-Casey (justincc) | 2013-06-28 19:11:44 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2013-06-28 19:11:44 +0100 |
commit | dc0455e217b8da3fc8bd49e959b57d6021312b77 (patch) | |
tree | 43d40dbb2cd9f7e685d967a740d7c102b433af3d /OpenSim/Services/AssetService | |
parent | Reinsert code for gathering uuids reference by materials back directly into U... (diff) | |
download | opensim-SC_OLD-dc0455e217b8da3fc8bd49e959b57d6021312b77.zip opensim-SC_OLD-dc0455e217b8da3fc8bd49e959b57d6021312b77.tar.gz opensim-SC_OLD-dc0455e217b8da3fc8bd49e959b57d6021312b77.tar.bz2 opensim-SC_OLD-dc0455e217b8da3fc8bd49e959b57d6021312b77.tar.xz |
In XAssetService, on a delete asset request also delete the asset in any chained service.
This eliminates the async migration since it causes a race condition with the "delete asset" console command
Diffstat (limited to 'OpenSim/Services/AssetService')
-rw-r--r-- | OpenSim/Services/AssetService/XAssetService.cs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/OpenSim/Services/AssetService/XAssetService.cs b/OpenSim/Services/AssetService/XAssetService.cs index 8a2ca7c..6047616 100644 --- a/OpenSim/Services/AssetService/XAssetService.cs +++ b/OpenSim/Services/AssetService/XAssetService.cs | |||
@@ -205,15 +205,16 @@ namespace OpenSim.Services.AssetService | |||
205 | if (!UUID.TryParse(id, out assetID)) | 205 | if (!UUID.TryParse(id, out assetID)) |
206 | return false; | 206 | return false; |
207 | 207 | ||
208 | // Don't bother deleting from a chained asset service. This isn't a big deal since deleting happens | 208 | if (HasChainedAssetService) |
209 | // very rarely. | 209 | m_ChainedAssetService.Delete(id); |
210 | 210 | ||
211 | return m_Database.Delete(id); | 211 | return m_Database.Delete(id); |
212 | } | 212 | } |
213 | 213 | ||
214 | private void MigrateFromChainedService(AssetBase asset) | 214 | private void MigrateFromChainedService(AssetBase asset) |
215 | { | 215 | { |
216 | Util.FireAndForget(o => { Store(asset); m_ChainedAssetService.Delete(asset.ID); }); | 216 | Store(asset); |
217 | m_ChainedAssetService.Delete(asset.ID); | ||
217 | } | 218 | } |
218 | } | 219 | } |
219 | } \ No newline at end of file | 220 | } \ No newline at end of file |