aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-10-26ParcelObjectOwnersReplyPacket has null DataBlock when a client requests a ↵Dan Lake1-0/+4
list of their prims in the region and none exist. Instead of leaving pack.Data null, this patch sets a new DataBlock[0];
2009-10-26Do case-insensitive comparisons on region names in LLStandaloneLoginModuleJohn Hurliman2-3/+3
2009-10-26* Changed the watchdog timer to improve the speed of UpdateThread(), only ↵John Hurliman3-32/+38
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
2009-10-26Changed UseCircuitCode handling to be synchronous or asynchronous depending ↵John Hurliman1-10/+21
on the async_packet_handling config option, and added a debug log message when a UseCircuitCode packet is handled
2009-10-26Removed an unnecessary lock in LLUDPClient.UpdateRTO() and ↵John Hurliman1-30/+21
LLUDPClient.BackoffRTO()
2009-10-26Thank you, RemedyTomm, for an update to your previous patch. Garbage-collectMelanie1-2/+21
the transfers that never happen.
2009-10-26Thank you, RemedyTomm, for a patch to handle Xfer requests being droppedMelanie1-2/+24
before the file data to be transfered is ready.
2009-10-25Having a commit fail... this fixes a typo in the previous commit(s?)John Hurliman1-1/+1
2009-10-25Minor tweaks to get OpenSim compiling against both the current libomv and ↵John Hurliman2-1/+3
the upcoming 0.8.0
2009-10-25Minor tweaks to get OpenSim compiling against both the current libomv and ↵John Hurliman3-2/+4
the upcoming 0.8.0
2009-10-25Changing Scene.ForEachClient to use the synchronous for loop instead of ↵John Hurliman10-145/+153
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
2009-10-23* Changed various modules to not initialize timers unless the module is ↵John Hurliman7-31/+41
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
2009-10-23* Change the way Util.FireAndForget() calls SmartThreadPool to avoid using a ↵John Hurliman1-1/+11
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
2009-10-23* Unregister Mono.Addins event handlers in PluginLoader.Dispose() and always ↵John Hurliman6-24/+39
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
2009-10-23Cleaning up OpenSim.ini.example for LLUDP. The [LLClient] section has been ↵John Hurliman2-13/+28
removed and several new parameters have been added to [ClientStack.LindenUDP]
2009-10-23Patch from dslake http://opensimulator.org/mantis/view.php?id=4291 0004291: ↵dslake1-2/+3
Inconsistent locking of ODE tainted prims
2009-10-23Inconsistent locking of SenseRepeaters in Script Engine.unknown1-8/+11
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()
2009-10-23Fix a glitch in a ROBUST messageMelanie1-1/+1
2009-10-23Implemented a "FrontBack" prioritizer, using distance plus the plane ↵John Hurliman3-3/+78
equation to give double weight to prims/avatars in front of you
2009-10-23Adding the presence service skeletonMelanie3-0/+192
2009-10-23Uncommented the resend log line so the previous commit can be seen in actionJohn Hurliman1-1/+1
2009-10-23* Changed the max RTO value to 60 seconds to comply with RFC 2988John Hurliman2-1/+4
* Implemented section 5.5, exponential backoff of the RTO after a resend
2009-10-23Commented out noisy debugging about resent packets (normal) and agents ↵John Hurliman2-3/+3
setting throttles (normal)
2009-10-23Experimental change to use an immutable array for iterating ScenePresences, ↵John Hurliman13-284/+308
avoiding locking and copying the list each time it is accessed
2009-10-22* Moved Copyrights above the comments in ODEPrim and ODEDynamics so they're ↵Teravus Ovares (Dan Olivares)2-26/+28
consistent with the rest (and so chi11ken's auto copyright adding script doesn't duplicate the copyright.
2009-10-22* Send out m_bodyRot everywhere instead of m_rotation. Still have no clue ↵John Hurliman2-23/+23
which is right * Fix WorldMapModule.process() to not trip the watchdog timer
2009-10-22Forgot to hit save in the last commitJohn Hurliman1-1/+1
2009-10-22* Sending (position - hipoffset) instead of positionJohn Hurliman1-5/+2
* Sending m_rotation instead of m_bodyRot in full updates to match terse updates (no idea which one is right!)
2009-10-22Implemented a Watchdog class. Do not manually create Thread objects anymore, ↵John Hurliman17-120/+306
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
2009-10-22Commented out instrumentation in ODEPrim.csKittoFlora1-0/+8
2009-10-22Terrible typo in the previous commit!John Hurliman1-1/+1
2009-10-22* Added a check if Util.m_ThreadPool is null before trying to use it, and if ↵John Hurliman1-13/+7
so initialize it to sane defaults * Simplified the InitThreadPool() function
2009-10-22Correct version number after mergeMelanie1-2/+2
2009-10-22Fixing the patch to the patchSnowcrash1-3/+6
2009-10-22Fix rounding error in PRIM_SIZE portion of llSetPrimitiveParamsSnowcrash1-3/+4
2009-10-22Add copyright header. Formatting cleanup.Jeff Ames2-1/+28
2009-10-22A synchronous call to the messaging server was blocking the process of ↵John Hurliman1-1/+7
promoting an agent to a root agent (logins and teleports). Changed to an async method
2009-10-22* Allow SmartThreadPool to be initialized without setting max stack size ↵John Hurliman2-6/+13
(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."
2009-10-22Remove the "mel_t" from version stringMelanie1-1/+1
2009-10-21* Changed the misc. methods calling ThreadPool.UnsafeQueueUserWorkItem() to ↵John Hurliman8-36/+70
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
2009-10-22Make the LSL scripting delays take full effect. To tune, tweat theMelanie1-56/+49
ScriptDelayFactor in config
2009-10-22Reduce the default pool threads to 15 (from 30) and the minimum from 5 to 2Melanie2-2/+2
2009-10-22Add MaxPoolThreads in startup to limit the size of the thread pool usedMelanie2-12/+24
for FireAndForget. This lets us limit concurrency to make OpenSim play nice
2009-10-21* Change the OnQueueEmpty signature to send the flags of the queues that are ↵John Hurliman5-61/+120
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)
2009-10-22Mark new versionMelanie1-1/+1
2009-10-21* Clarified what FireQueueEmpty is doing with a MIN_CALLBACK_MS constant and ↵John Hurliman4-18/+8
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()
2009-10-21* FireQueueEmpty now checks if a measurable amount of time has passed, and ↵John Hurliman3-38/+16
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
2009-10-21* Changed the timing calculations for sending resends/acks/pings from ↵John Hurliman3-41/+63
per-client back to per-scene * Testing a fix from Jim to make the cpu usage fix cleaner
2009-10-21Testing out a hack to identify the source of the high cpu usageJohn Hurliman1-0/+3
2009-10-21Removing the Sleep(0) call from the OutgoingPacketHandlerJohn Hurliman1-6/+3