| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
| |
Fixing LLClientView memory leak by disposing of all timers utilized
in LLClientView as they contain references to the callback method.
This required the use of the Terminate and Close infrastructure that
was already in place but was not being utilized.
|
| |
|
|
|
|
|
|
|
|
| |
* Uses mantis #3811 as a base (thanks jhuliman) with changes.
* E-mail regarding interface changes sent to the opensim-dev list
* Archive: https://lists.berlios.de/pipermail/opensim-dev/2009-July/007219.html
|
|
|
|
|
|
|
|
|
| |
balancer plugin work again. Create a new method, GetClientEP, to retrieve
only the EndPoint for script usage. Marked the purpose of the method
in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo
functionality.
|
| |
|
|
|
|
|
|
| |
it instead after the foreach as we are going through the whole
m_PendingAcks list anyhow
|
| |
|
|
|
|
|
| |
for spotting it!
|
| |
|
| |
|
|
|
|
|
| |
instantiations and object copies.
|
| |
|
|
|
|
|
| |
LLQueItem m_NeedAck queue each time.
|
|
|
|
|
|
|
|
| |
bit of GetClientInfo that is actually used seems to be userEP as part of the
OSSL osGetAgentIP() script function. Now commented are the parts where
we serialize and copy out the *entire* packet queue of the client
(locking the packet handler in the process).
|
|
|
|
|
|
|
|
|
|
|
| |
- uses Environment.TickCount for all timestamps (instead of more
costly Util.UnixTimeSinceEpoch()
- takes care of Environment.TickCount overflow (which will happens
after 24.8 days of system uptime)
- avoids instantiating List copies for each check
- gets rid of one lock() invocation
- moves calculation of loop invariant variable out of the loop itself
|
|
|
|
| |
LICENSE.txt.
|
| |
|
|
|
|
| |
(From maximum 117kbit to 585kbit)
|
|
|
|
|
|
| |
the user
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't allow packets to be resent before they have actually been sent for the
first time. Switch from serializing a packet to get it's length to the LibOMV
provided Length property. Fix resend timing. Fix the use of dangling references
to Acked packets. Fix the packet handler to play nice with the packet pool.
Fix the packet pool. Add data block recycling to the packet pool. Packet pool
is now ENABLED by default. Add config option to disable packet and data block
reuse. Add ObjectUpdate and ImprovedTerseObjectUpdate to the packets being
recycled.
|
|
|
|
|
|
|
|
| |
to recycley data blocs within a packet. Recycle the ObjectUpdate* data
blocks. Speeds up loading even more.
This may mean that the packet pool is now viable.
|
| |
|
|
|
|
|
|
|
|
|
| |
- handle GetUser request for nonexistent user gracefully
- include throttle levels in ClientInfo
- code to save/restore throttles in client stack
- only update/send updates to active clients
- make animation classes serializable
|
| |
|
|
|
|
|
|
| |
* Can't test result yet since the Client thread handles it with unpredictable timing
|
| |
|
|
|
|
|
|
|
| |
* 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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
FWIW
|
|
|
|
|
|
| |
use everywhere. Each packet gets serialized only once now in PacketHandler
|
|
|
|
|
|
| |
Eliminates the bursting in resends observed in the prior implementation
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
* without this, the client appears to reset the sequence of packets its expecting
|
|
|
|
|
|
| |
regions.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
craters go away.
|
|
|
|
|
|
|
|
| |
values for the total throttle (the one that throttles all packet output)
* Not complete yet
|
| |
|
| |
|
|
|
|
| |
from the last commit
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
|
|
| |
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
|
| |
|