lbsa71
801da4346a
* optimized usings.
2009-02-12 09:53:12 +00:00
Justin Clarke Casey
d4d2c19594
* Extend PacketHandlerTest to fire in a packet.
...
* Can't test result yet since the Client thread handles it with unpredictable timing
2009-01-12 18:45:03 +00:00
Justin Clarke Casey
6e9d5e4ea7
* refactor: move packet handler interface into a separate class
2009-01-12 17:31:30 +00:00
Teravus Ovares
e9cef70f89
* Updates the sim stats module. Cleans out some of the rot.
...
* Adds a prototype web stats module which is disabled by default. It's functional with one report right now, however, the database structure may change, so I don't recommend enabling this to keep actual stats right now. I'll let you know when it's safe.
* Adds Prototype for ajaxy web content
* removed a warning or two.
2009-01-03 03:30:03 +00:00
Justin Clarke Casey
899f2a80d7
minor: remove mono compiler warning
2008-12-19 19:50:46 +00:00
Melanie Thielker
a9e38bcafc
Reapply the packet optimization patch, with changes
2008-12-17 21:00:18 +00:00
Melanie Thielker
2bcf315ea2
Revert 7754 and 7755 pending a rework
2008-12-17 20:34:37 +00:00
Melanie Thielker
5320f0f33c
Stop packets that may be resent from being returned to the packet pool.
...
FWIW
2008-12-17 20:21:48 +00:00
Melanie Thielker
0d3a9b45ae
Marry AckData to LLQueItem, and store packet data and length there for
...
use everywhere. Each packet gets serialized only once now in PacketHandler
2008-12-17 18:56:47 +00:00
Melanie Thielker
35ec496f98
Revamp packet handler to smooth out the stream of resent packets.
...
Eliminates the bursting in resends observed in the prior implementation
2008-12-17 17:19:14 +00:00
Adam Frisby
7308f35a96
* Fixed issue where incorrect braces nesting resulted in a section of PacketQueue getting disabled.
...
* This means the recent memory fix should now be working correctly - so the current largest memory leak should be fixed. AssetCache still needs to be addressed however.
2008-11-08 21:08:01 +00:00
Adam Frisby
fb2a1a6b7c
* Fixed a major memory leak in packet processing - PacketQueue.Close is never called, causing the PacketQueue for dead clients to be preserved (including it's contents).
...
* This patch is highly experimental and may cause clients to not be able to connect, if this is the case, it will be rolled back in approximately 5 minutes.
2008-11-08 20:52:48 +00:00
Justin Clarke Casey
d18aff3310
* restore Header.Resent field setting for resent packets
...
* without this, the client appears to reset the sequence of packets its expecting
2008-10-06 16:57:58 +00:00
Melanie Thielker
a3136d2bb1
Revert the packet resend timing changes. They caused login issues in primmy
...
regions.
2008-10-05 16:43:58 +00:00
Melanie Thielker
c84987426b
Craters, take 2. Remove old discard logic and absolute discard timer.
...
Introduce a resend counter on the ack queue. The header "Resent" field is
now obsolete. Implement 3 resends on reliable packets, variable.
Increase default resend timeout to 3000ms and default silence threshold
to 350ms.
2008-10-05 14:44:26 +00:00
Teravus Ovares
a243a4aaf5
* An update to the UDP Packet handler which might make the giant sized craters go away.
2008-10-05 13:06:03 +00:00
Justin Clarke Casey
743e336bf3
* Put in some infrastructure to allow tweaking of packet queue throttle values for the total throttle (the one that throttles all packet output)
...
* Not complete yet
2008-10-03 18:06:45 +00:00
Justin Clarke Casey
8c55f3eaa6
* minor: remove warnings (the code cleaners strike again)
2008-10-03 14:18:17 +00:00
Justin Clarke Casey
7e35e4c816
* minor: oh, and comment out the now unused logger as well
2008-10-01 20:56:34 +00:00
Justin Clarke Casey
231b8c2a67
* minor: Comment out temporarily statistical counter I accidentally left in from the last commit
2008-10-01 20:55:09 +00:00
Justin Clarke Casey
cbb9693ef4
* Try bumping packet resend timeout up to 2 seconds instead of 1
...
* This actually probably doesn't make a huge difference. We still end up resending a massive number of packets in quite a few situations, but it's not easy to consistently
reproduce this.
* Might really need some throttling of packet send to the client on the OpenSim end.
2008-10-01 20:54:28 +00:00
Justin Clarke Casey
95a3d6372d
* Fix bug in LLPacketHandler where the tickcount when a packet was approximately sent was not being stored in the ack record
...
* This meant that acks were being sent out every 250ms when the ack timer fired, rather than when they had actually aged past m_ResendTimeout
2008-10-01 17:18:20 +00:00
Melanie Thielker
1d5b2bb8bc
Add some methods to allow modules so set client view options
2008-09-28 19:45:42 +00:00
Melanie Thielker
95c3e0883c
Mantis #2288
...
Correct a typo in namespace declaration
Also adds a new flag to the PacketManager to force retention of packets
marked reliable (default off)
2008-09-28 18:07:06 +00:00
Teravus Ovares
16b6738cda
* Patch from JHurliman
...
* Updates to libomv r2243,
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman.
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00
Justin Clarke Casey
1a71a3a567
* Fix http://opensimulator.org/mantis/view.php?id=2189
...
* Allow a grid mode region simulator to properly shutdown even if the grid service is offline
2008-09-21 16:58:14 +00:00
Teravus Ovares
7d89e12293
* This is the fabled LibOMV update with all of the libOMV types from JHurliman
...
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle.
* This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big!
* Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Jeff Ames
3bf8858727
Update svn properties, formatting cleanup.
2008-08-28 14:41:54 +00:00
Justin Clarke Casey
3d2069f3d9
* zap compilation warnings
2008-08-25 21:35:22 +00:00
Teravus Ovares
2912aafe25
* This commit incorporates the heart of the OpenGridProtocol patch that is currently on Forge in a nice, friendly modular format.
...
* There are a lot of changes and this is quite experimental. It's off by default, but you can turn it on by examining the bottom of the opensim.ini.example for the proper OpenSim.ini settings. Remember, you still need an agent domain..
* Furthermore, it isn't quite right when it comes to teleporting to remote regions (place_avatar)
2008-08-25 07:35:17 +00:00
Justin Clarke Casey
f0ffbf5b38
* Allow an exception generated in ProcessOutPacket to travel up the stack
...
* It is dealt with correctly further up, at which point the user is also notified and the failure recorded as a statistic
2008-08-22 21:41:05 +00:00
Melanie Thielker
5cb0d4fcac
Packet type exclusion (Mantis #2004 )
...
Exclude SimStats packets from ack appending.
2008-08-19 19:44:49 +00:00
Jeff Ames
6ef9d4da90
Formatting cleanup.
2008-08-18 00:39:10 +00:00
Jeff Ames
f894f5d87b
Minor formatting cleanup.
2008-08-12 00:08:41 +00:00
Melanie Thielker
9b7e66ceda
Attempt to address Mantis #1905 , #1909
...
Prevent re-sequencing of resent packets. Thanks, ckrinke, for
catching that, it is what was happening.
2008-08-10 16:37:45 +00:00
Jeff Ames
657af5e611
Update svn properties, minor formatting cleanup.
2008-08-08 06:39:35 +00:00
Melanie Thielker
39e68833b2
Patch #9159
...
Complete the support for dupe tracking. Eliminate one of the "Eternal
caches".
2008-08-07 15:32:39 +00:00
Melanie Thielker
51f90af4b7
Patch #9158
...
Refactor packet sending into LLPacketHandler. Change packet sequencing
and ack lists to ensure packet sequences conform to wire order.
2008-08-07 14:48:45 +00:00
Jeff Ames
0718aa0b7f
Minor formatting cleanup.
2008-08-07 12:55:46 +00:00
Melanie Thielker
c80493ed4d
Prevent acks from being appended to viewer effect packets, since
...
that has been known to cause an exception in libomv ^^
2008-07-29 22:40:23 +00:00
Justin Clarke Casey
11385c53e6
* minor: eliminate warnings from LindenUDP
2008-07-24 16:03:17 +00:00
Melanie Thielker
740a9a7374
Thank you, Neopallium, for a patch that addresses ack issues in the
...
client stack. Committed with changes, see Mantis #1810 for details.
2008-07-24 15:52:36 +00:00
Jeff Ames
a4ad6a67b7
Update svn properties. Minor formatting cleanup.
2008-07-24 15:20:47 +00:00
Melanie Thielker
cc5d49d9c1
Addresses Mantis #1810
...
Collapses two locks into one to avoid a situation were a List is
cloned under two different locks, resulting in a bad index in
.NET code.
2008-07-24 01:38:58 +00:00
Melanie Thielker
76d8cceb92
Fix a race causing a buffer overflow under moderate load
2008-07-23 14:26:08 +00:00
Jeff Ames
80d8e2889e
Update svn properties. Formatting cleanup. Remove a compiler warning.
2008-07-23 13:24:25 +00:00
Melanie Thielker
e09ff343fb
Make QueuePacket() lock free. Eliminates an unneeded lock()
2008-07-22 22:49:13 +00:00
Melanie Thielker
7fb103d374
Change one packet optimization to cover a case where the resend
...
queue may block indefinitely when a single packet is not acked
by the viewer and no others cwfromfor that region are pending.
2008-07-22 22:21:20 +00:00
Melanie Thielker
f112cebde2
Refactor the packet scheduling out of ClientView. Add intelligent
...
resending, timeouts, packet discarding. Add notification event for
packet discarding. Add priority scheduling for packet queues.
Add outgoing duplicate detection facility. Correct packet sequencing.
Make provisions for automatic server side throttle adjustments (comes
in next installment)
2008-07-22 17:58:42 +00:00