Merge branch 'master' into varregion

This commit is contained in:
Robert Adams
2013-11-05 21:42:27 -08:00
10 changed files with 168 additions and 60 deletions

View File

@@ -1435,6 +1435,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
mapReply.AgentData.AgentID = AgentId;
mapReply.Data = new MapBlockReplyPacket.DataBlock[mapBlocks2.Length];
mapReply.Size = new MapBlockReplyPacket.SizeBlock[mapBlocks2.Length];
mapReply.AgentData.Flags = flag;
for (int i = 0; i < mapBlocks2.Length; i++)
@@ -1449,6 +1450,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
mapReply.Data[i].RegionFlags = mapBlocks2[i].RegionFlags;
mapReply.Data[i].Access = mapBlocks2[i].Access;
mapReply.Data[i].Agents = mapBlocks2[i].Agents;
// TODO: hookup varregion sim size here
mapReply.Size[i] = new MapBlockReplyPacket.SizeBlock();
mapReply.Size[i].SizeX = 256;
mapReply.Size[i].SizeY = 256;
}
OutPacket(mapReply, ThrottleOutPacketType.Land);
}

View File

@@ -132,6 +132,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP
stat => stat.Value = m_udpServer.IncomingOrphanedPacketCount,
StatVerbosity.Info));
StatsManager.RegisterStat(
new Stat(
"IncomingPacketsResentCount",
"Number of inbound packets that clients indicate are resends.",
"",
"",
"clientstack",
scene.Name,
StatType.Pull,
MeasuresOfInterest.AverageChangeOverTime,
stat => stat.Value = m_udpServer.IncomingPacketsResentCount,
StatVerbosity.Debug));
StatsManager.RegisterStat(
new Stat(
"OutgoingUDPSendsCount",
@@ -317,6 +330,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
/// </summary>
internal int PacketsSentCount { get; set; }
/// <summary>
/// Record how many incoming packets are indicated as resends by clients.
/// </summary>
internal int IncomingPacketsResentCount { get; set; }
/// <summary>
/// Record how many inbound packets could not be recognized as LLUDP packets.
/// </summary>
@@ -1467,6 +1485,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP
#region Incoming Packet Accounting
// We're not going to worry about interlock yet since its not currently critical that this total count
// is 100% correct
if (packet.Header.Resent)
IncomingPacketsResentCount++;
// Check the archive of received reliable packet IDs to see whether we already received this packet
if (packet.Header.Reliable && !udpClient.PacketArchive.TryEnqueue(packet.Header.Sequence))
{