* Remove dumb bug I put in which meant that an archive save would never complete if there were any missing assets

This commit is contained in:
Justin Clarke Casey
2008-07-25 15:18:24 +00:00
parent f2bc404e70
commit fd4e703f25
5 changed files with 17 additions and 10 deletions

View File

@@ -199,7 +199,7 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
protected void GetSceneObjectAssetUuids(SceneObjectGroup sceneObject, IDictionary<LLUUID, int> assetUuids)
{
m_log.DebugFormat(
"[ARCHIVER]: Getting assets for object {0}, {1}", sceneObject.RootPart.Name, sceneObject.UUID);
"[ARCHIVER]: Getting assets for object {0}, {1}", sceneObject.Name, sceneObject.UUID);
foreach (SceneObjectPart part in sceneObject.GetParts())
{
@@ -255,6 +255,7 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
catch (Exception e)
{
m_log.ErrorFormat("[ARCHIVER]: Failed to get part - {0}", e);
m_log.DebugFormat("[ARCHIVER]: Texture entry length for prim was {0} (min is 46)", part.Shape.TextureEntry.Length);
}
}
}

View File

@@ -30,8 +30,10 @@ using OpenSim.Framework.Communications.Cache;
using OpenSim.Region.Environment.Interfaces;
using OpenSim.Region.Environment.Scenes;
using System.Collections.Generic;
//using System.Reflection;
using System.Threading;
using libsecondlife;
//using log4net;
namespace OpenSim.Region.Environment.Modules.World.Archiver
{
@@ -40,6 +42,8 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
/// </summary>
class AssetsRequest
{
//private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
/// <summary>
/// uuids to request
/// </summary>
@@ -101,8 +105,11 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
m_assets[assetID] = asset;
else
m_notFoundAssetUuids.Add(assetID);
//m_log.DebugFormat(
// "[ARCHIVER]: Received {0} assets and notification of {1} missing assets", m_assets.Count, m_notFoundAssetUuids.Count);
if (m_assets.Count == m_repliesRequired)
if (m_assets.Count + m_notFoundAssetUuids.Count == m_repliesRequired)
{
// We want to stop using the asset cache thread asap as we now need to do the actual work of producing the archive
Thread newThread = new Thread(PerformAssetsRequestCallback);