minor: Make log message when Scene.IncomingChildAgentDateUpdate() more explicit that there is a problem if it still finds the agent to be a child if the sender wanted to wait till it became root

Add some comments about the mssage sequence, though much more data is at
http://opensimulator.org/wiki/Teleports
0.7.6-extended
Justin Clark-Casey (justincc) 2013-09-18 22:56:00 +01:00
parent ee58e3a5a1
commit 1a55309ea7
2 changed files with 12 additions and 4 deletions

View File

@ -4338,9 +4338,14 @@ namespace OpenSim.Region.Framework.Scenes
while (sp.IsChildAgent && ntimes-- > 0) while (sp.IsChildAgent && ntimes-- > 0)
Thread.Sleep(1000); Thread.Sleep(1000);
if (sp.IsChildAgent)
m_log.DebugFormat( m_log.DebugFormat(
"[SCENE]: Found presence {0} {1} {2} in {3} after {4} waits", "[SCENE]: Found presence {0} {1} unexpectedly still child in {2}",
sp.Name, sp.UUID, sp.IsChildAgent ? "child" : "root", Name, 20 - ntimes); sp.Name, sp.UUID, Name);
else
m_log.DebugFormat(
"[SCENE]: Found presence {0} {1} as root in {2} after {3} waits",
sp.Name, sp.UUID, Name, 20 - ntimes);
if (sp.IsChildAgent) if (sp.IsChildAgent)
return false; return false;

View File

@ -1354,7 +1354,10 @@ namespace OpenSim.Region.Framework.Scenes
private bool WaitForUpdateAgent(IClientAPI client) private bool WaitForUpdateAgent(IClientAPI client)
{ {
// Before UpdateAgent, m_originRegionID is UUID.Zero; after, it's non-Zero // Before the source region executes UpdateAgent
// (which triggers Scene.IncomingChildAgentDataUpdate(AgentData cAgentData) here in the destination,
// m_originRegionID is UUID.Zero; after, it's non-Zero. The CompleteMovement sequence initiated from the
// viewer (in turn triggered by the source region sending it a TeleportFinish event) waits until it's non-zero
int count = 50; int count = 50;
while (m_originRegionID.Equals(UUID.Zero) && count-- > 0) while (m_originRegionID.Equals(UUID.Zero) && count-- > 0)
{ {