aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-11-21* Comment out some example code for later.Teravus Ovares (Dan Olivares)1-2/+2
2009-11-21* Move a few of the ProcessInPacket switch case blocks into packet handler ↵Teravus Ovares (Dan Olivares)1-6/+103
delegates
2009-11-21* This fixes landing on Prim and removes the hack from yesterday. Landing ↵Teravus Ovares (Dan Olivares)1-3/+3
on prim should work fine again.
2009-11-09* Removing the redundant SendPrimitiveTerseData.State field, it duplicates ↵John Hurliman1-3/+3
AttachPoint * LLClientView.CreateImprovedTerseBlock() now uses AttachPoint and does the proper high-low swap (this should fix disappearing attachment pieces)
2009-11-09minor: remove some mono compiler warningsJustin Clark-Casey (justincc)1-2/+2
2009-11-08remove the debug stuffMelanie1-1/+0
2009-11-08test commit with debug output per folder fetch. NOT FOR PRODUCTION, SPEWYMelanie1-0/+1
2009-11-05* Clamp the CoarseLocationUpdate packet at a maximum of 60 positions per ↵John Hurliman1-7/+11
packet. This is a limitation of LLUDP, nothing we can really do about it * Marking CoarseLocationUpdate as *not* zerocoded. Zerocoding can only save space when a packet contains three or more contiguous zeroes, and will use more space if it contains single zeroes randomly scattered through the packet (which is what you see when you send a long list of UUIDs)
2009-11-05Changing the AssetBase constructors to avoid initializing assets with an ↵John Hurliman1-4/+1
unknown asset type, and log an error if it ever does happen
2009-11-05Applying #4332, optional packet statistics loggingJohn Hurliman2-0/+115
2009-11-05Patch by revolution, thank you. Mantis #1789 . Implement friends permissions.Melanie1-1/+21
Applied with major changes. Core functionality commented pending review for possible rights escalation. No user functionality yet.
2009-11-04Separate folder and item limit for UDP inventory packets. Folder limit isMelanie1-4/+5
now 6, as before, item limit is 5. This should avoid most, if not all, oversized packets.
2009-11-04Refine oversized packet handling as per jhurliman. Reallocate the buffer toMelanie1-4/+7
actual packet size only for oversized packets.
2009-11-04Add some length to the backet buffer for packet sending so oversizeMelanie1-1/+1
inventory packets don't make us barf
2009-11-04Add an overload to OutPacket as per jhurliman. Switch hacky workaroundMelanie1-5/+15
for InventoryDescendents to the proper way
2009-11-04Bounce the pacjet items limit back up to 6Melanie1-1/+1
2009-11-04Prevent autosplitting of inventory descendents packets. Also reduces theMelanie1-1/+4
number of items per packet to 5 to prevent asserts
2009-11-04Correctly set the totall number of descendents in inventory retrievalMelanie1-3/+4
2009-11-04Backport the fixes to WebFetchInventoryDescendents to the UDPMelanie1-152/+94
InventoryDescendents packet. Testing has shown that UDP inventory now works flawlessly and, unlike CAPS inventory, doesn't download the entire agent inventory on start. Neither does it incessantly re-request folder NULL_KEY. Therefore, I have disabled CAPS inventory.
2009-10-30Make the default and max RTO configurable int he linden client stackMelanie2-5/+19
2009-10-30Fixed a regression in SendAvatarGroupsReply()John Hurliman1-2/+2
2009-10-30Convert the AvatarGroupsReply message to the event queue.Melanie1-26/+39
2009-10-30Add a using for OSD to the client viewMelanie1-0/+1
2009-10-30* Disables automatic packet splitting on AvatarGroupsReply packets. This ↵John Hurliman2-14/+16
packet is a mess and shouldn't be used at all (in favor of the event queue message) * Clean up the way we send AvatarGroupsReply packets, including clamping the group name and group title
2009-10-30* Fix for a potential race condition in ScenePresence.AbsolutePositionJohn Hurliman1-2/+0
* Unified the way region handles are stored and used in ScenePresence * Fixed camera position for child agents * CheckForSignificantMovement now checks avatar and camera position (both are important for scene prioritization) * Removing debug code from the previous commit
2009-10-30* Moving parcel media and avatar update packets from the unthrottled ↵John Hurliman4-22/+25
category to task * Fixing a bug where the max burst rate for the state category was being set as unlimited, causing connections to child agents to saturate bandwidth * Upped the example default drip rates to 1000 bytes/sec, the minimum granularity for the token buckets
2009-10-30* Fixes issue #4329 "llDialog fails silently" by updating OpenMetaverse.dllJohn Hurliman2-10/+10
* Prints a warning for any future packet splitting failures
2009-10-29* Commented out two noisy debug lines in the LLUDP serverJohn Hurliman1-2/+2
* Misc. cleanup in ScenePresence.HandleAgentUpdate()
2009-10-28Always send a time dilation of 1.0 while we debug rubberbanding issuesJohn Hurliman1-101/+0
2009-10-28Marking ImprovedTerseObjectUpdate packets for avatars as unthrottled to testJohn Hurliman1-1/+1
2009-10-28Modified visibilities of properties and methods. This is so that SL client ↵Mikko Pallari2-12/+12
based clients can use UDP server that is inherited from LLUDPServer.
2009-10-27Experimental test to rate limit the incoming packet handler and try to ↵John Hurliman1-0/+8
always leave a worker thread available for other tasks
2009-10-27* Converts ClientManager.ForEach() (and as a result, Scene.ForEachClient()) ↵John Hurliman2-4/+6
to use a non-blocking parallel method when operating in async mode * Minor code readability cleanup
2009-10-26* Double the priority on avatar bake texture requests to get avatars rezzing ↵John Hurliman1-4/+14
in faster than the surrounding scene * Adds duplicate tracking for SceneObjectParts and ScenePresences to avoid sending out duplicate ImprovedTerseObjectUpdate packets
2009-10-26Removing the ClientManager reference from IScene and hiding it entirely ↵John Hurliman1-7/+7
inside Scene as an implementation detail. This will reduce programming error and make it easier to refactor the avatar vs client vs presence mess later on
2009-10-26* Switched all operations on the list of clients that could be either sync ↵John Hurliman1-2/+2
or async to use Scene.ForEachClient() instead of referencing ClientManager directly * Added a new [Startup] config option called use_async_when_possible to signal how to run operations that could be either sync or async * Changed Scene.ForEachClient to respect use_async_when_possible * Fixing a potential deadlock in Parallel.ForEach by locking on a temporary object instead of the enumerator (which may be shared across multiple invocations on ForEach). Thank you diva
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-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-25Changing Scene.ForEachClient to use the synchronous for loop instead of ↵John Hurliman2-16/+42
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* Unregister Mono.Addins event handlers in PluginLoader.Dispose() and always ↵John Hurliman1-1/+5
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-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 Hurliman1-71/+70
avoiding locking and copying the list each time it is accessed
2009-10-22Implemented a Watchdog class. Do not manually create Thread objects anymore, ↵John Hurliman1-8/+11
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-22Add copyright header. Formatting cleanup.Jeff Ames1-1/+1
2009-10-21* Changed the misc. methods calling ThreadPool.UnsafeQueueUserWorkItem() to ↵John Hurliman1-3/+3
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-21* Change the OnQueueEmpty signature to send the flags of the queues that are ↵John Hurliman4-61/+108
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)