| Commit message (Collapse) | Author | Files | Lines |
|
list of their prims in the region and none exist. Instead of leaving pack.Data null, this patch sets a new DataBlock[0];
|
|
|
|
track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later
* Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
|
|
on the async_packet_handling config option, and added a debug log message when a UseCircuitCode packet is handled
|
|
LLUDPClient.BackoffRTO()
|
|
the transfers that never happen.
|
|
before the file data to be transfered is ready.
|
|
|
|
the upcoming 0.8.0
|
|
the upcoming 0.8.0
|
|
Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff
* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()
* Improved the instantiation of PrimitiveBaseShape
|
|
initialized. Ideally, the timers would not initialize unless the module was actually enabled, but Melanie's work on configuring module loading from a config file should make that unnecessary
* Wrapped the Bitmap class used to generate the world map tile in a using statement to dispose of it after the JPEG2000 data is created
|
|
delegate (which STP appears to hold on to). This removes the slow leak I was seeing when using async_call_method=SmartThreadPool and stabilizes allocated memory for an idle OpenSim instance
|
|
handle PluginLoader with the using pattern. This freed up 121,634,796 bytes on my system
* Avoid allocating an Action<IClientAPI> object every round of the OutgoingPacketHandler
* Removed unnecessary semi-colon endings from OpenSim.ini.example [InterestManagement] section
|
|
removed and several new parameters have been added to [ClientStack.LindenUDP]
|
|
Inconsistent locking of ODE tainted prims
|
|
When I attempt to 'save oar' on a region with thousands of scripts with timers, I get a NullReferenceException every time. The problem comes from inconsistent locking in SensorRepeat.cs of the SenseRepeaters List. It is iterated and modified in many places and these places are all wrapped in a lock except in the GetSerializationData(). This is the function throwing the exception because an item in the list becomes null during iteration.
The attached patch locks SenseRepeatListLock in GetSerializationData()
|
|
|
|
equation to give double weight to prims/avatars in front of you
|
|
|
|
|
|
* Implemented section 5.5, exponential backoff of the RTO after a resend
|
|
setting throttles (normal)
|
|
avoiding locking and copying the list each time it is accessed
|
|
consistent with the rest (and so chi11ken's auto copyright adding script doesn't duplicate the copyright.
|
|
which is right
* Fix WorldMapModule.process() to not trip the watchdog timer
|
|
|
|
* Sending m_rotation instead of m_bodyRot in full updates to match terse updates (no idea which one is right!)
|
|
use Watchdog.StartThread(). While your thread is running call Watchdog.UpdateThread(). When it is shutting down call Watchdog.RemoveThread(). Most of the threads in OpenSim have been updated
|
|
|
|
|
|
so initialize it to sane defaults
* Simplified the InitThreadPool() function
|
|
|
|
|
|
|
|
|
|
promoting an agent to a root agent (logins and teleports). Changed to an async method
|
|
(like the original implementation)
* Only initialize Util's SmartThreadPool if it is actually being used
* No longer initializing Util's SmartThreadPool with a custom max stack size. From MSDN: "Avoid using this constructor overload. The default stack size used by the Thread(ThreadStart) constructor overload is the recommended stack size for threads."
|
|
|
|
Util.FireAndForget()
* Changed Util.FireAndForget() to use any of five different methods set with async_call_method in the [Startup] section of OpenSim.ini. Look at the example config for possible values
|
|
ScriptDelayFactor in config
|
|
|
|
for FireAndForget. This lets us limit concurrency to make OpenSim play nice
|
|
empty instead of firing once per empty queue
* Change the OnQueueEmpty firing to use a minimum time until next fire instead of a sleep
* Set OutgoingPacket.TickCount = 0 earlier to avoid extra resends when things are running slowly (inside a profiler, for example)
|
|
|
|
upped it to 30ms
* Removed the unused PacketSent() function
* Switched UnackedPacketCollection from a SortedDictionary to a Dictionary now that the sorting is no longer needed. Big performance improvement for ResendUnacked()
|
|
if not it sleeps for a small amount of time. This throttles OnQueueEmpty calls where there is no callback or the callback is doing very little work
* Changed HandleQueueEmpty()'s Monitor.TryEnter() calls to locks. We want to take our time in this function and do all the work necessary, since returning too fast will induce a sleep anyways
|
|
per-client back to per-scene
* Testing a fix from Jim to make the cpu usage fix cleaner
|
|
|
|
|