Comment back out seed dump code enabled in b1c26a56. Also adds a few teleport comments.

TeleportWork
Justin Clark-Casey (justincc) 2013-08-09 17:48:35 +01:00
parent 99bce9d877
commit 6fcbf219da
1 changed files with 22 additions and 16 deletions

View File

@ -1067,6 +1067,12 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
// May still need to signal neighbours whether child agents may need closing irrespective of whether this // May still need to signal neighbours whether child agents may need closing irrespective of whether this
// one needed closing. Neighbour regions also contain logic to prevent a close if a subsequent move or // one needed closing. Neighbour regions also contain logic to prevent a close if a subsequent move or
// teleport re-established the child connection. // teleport re-established the child connection.
//
// It may be possible to also close child agents after a pause but one needs to be very careful about
// race conditions between different regions on rapid teleporting (e.g. from A1 to a non-neighbour B, back
// to a neighbour A2 then off to a non-neighbour C. Also, closing child agents early may be more compatible
// with complicated scenarios where there a mixture of V1 and V2 teleports, though this is conjecture. It's
// easier to close immediately and greatly reduce the scope of race conditions if possible.
sp.CloseChildAgents(newRegionX, newRegionY); sp.CloseChildAgents(newRegionX, newRegionY);
// Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone // Finally, let's close this previously-known-as-root agent, when the jump is outside the view zone
@ -1865,10 +1871,10 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
List<ulong> newRegions = NewNeighbours(neighbourHandles, previousRegionNeighbourHandles); List<ulong> newRegions = NewNeighbours(neighbourHandles, previousRegionNeighbourHandles);
List<ulong> oldRegions = OldNeighbours(neighbourHandles, previousRegionNeighbourHandles); List<ulong> oldRegions = OldNeighbours(neighbourHandles, previousRegionNeighbourHandles);
Dump("Current Neighbors", neighbourHandles); // Dump("Current Neighbors", neighbourHandles);
Dump("Previous Neighbours", previousRegionNeighbourHandles); // Dump("Previous Neighbours", previousRegionNeighbourHandles);
Dump("New Neighbours", newRegions); // Dump("New Neighbours", newRegions);
Dump("Old Neighbours", oldRegions); // Dump("Old Neighbours", oldRegions);
/// Update the scene presence's known regions here on this region /// Update the scene presence's known regions here on this region
sp.DropOldNeighbours(oldRegions); sp.DropOldNeighbours(oldRegions);
@ -2180,18 +2186,18 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
return handles; return handles;
} }
private void Dump(string msg, List<ulong> handles) // private void Dump(string msg, List<ulong> handles)
{ // {
m_log.InfoFormat("-------------- HANDLE DUMP ({0}) ---------", msg); // m_log.InfoFormat("-------------- HANDLE DUMP ({0}) ---------", msg);
foreach (ulong handle in handles) // foreach (ulong handle in handles)
{ // {
uint x, y; // uint x, y;
Utils.LongToUInts(handle, out x, out y); // Utils.LongToUInts(handle, out x, out y);
x = x / Constants.RegionSize; // x = x / Constants.RegionSize;
y = y / Constants.RegionSize; // y = y / Constants.RegionSize;
m_log.InfoFormat("({0}, {1})", x, y); // m_log.InfoFormat("({0}, {1})", x, y);
} // }
} // }
#endregion #endregion