aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' into bullet-2.82Robert Adams2014-08-214-52/+472
|\
| * Extend drop command to "debug lludp drop <in|out>..." to allow drop of ↵Justin Clark-Casey (justincc)2014-08-192-8/+44
| | | | | | | | | | | | inbound packets. For test/debug purposes.
| * Add "debug lludp drop out <add|remove> <packet-name>" console command for ↵Justin Clark-Casey (justincc)2014-08-192-0/+76
| | | | | | | | | | | | | | debug/test purposes. This drops all outbound packets that match a given packet name. Can currently only be applied to all connections in a scene.
| * Add clientstack.<scene>.OQRERequestsWaiting statJustin Clark-Casey (justincc)2014-08-191-0/+19
| | | | | | | | Only present if OQRE is enabled
| * Add experimental OutgoingQueueRefillEngine to handle queue refill processing ↵Justin Clark-Casey (justincc)2014-08-193-5/+288
| | | | | | | | | | | | | | | | | | | | | | on a controlled number of threads rather than the threadpool. Disabled by default. Currently can only be enabled with console "debug lludp oqre start" command, though this can be started and stopped whilst simulator is running. When a connection requires packet queue refill processing (used to populate queues with entity updates, entity prop updates and image queue updates), this is done via Threadpool requests. However, with a very high number of connections (e.g. 100 root + 300 child) a very large number of simultaneous requests may be causing performance issues. This commit adds an experimental engine for processing these requests from a queue with a persistent thread instead. Unlike inbound processing, there are no network requests in this processing that might hold the thread up for a long time. Early implementation - currently only one thread which may (or may not) get overloaded with requests. Added for testing purposes.
| * Make LLUDPServer.Scene publicly gettable/privately settable instead of ↵Justin Clark-Casey (justincc)2014-08-193-49/+55
| | | | | | | | | | | | | | protected so that other logging code in the clientstack can record more useful information Adds some commented out logging for use again in the future. No functional change.
* | BulletSim: add new Bullet 2.82 constraint type codes and rename theRobert Adams2014-08-212-7/+9
|/ | | | BulletSim fixed constraint to not be confused with the native version.
* Prevent exception if inventory item in llGiveInventory() call doesn't exist.Kevin Cozens2014-08-181-0/+1
|
* If a user moves back in sight of a child region before the agent has been ↵Justin Clark-Casey (justincc)2014-08-152-7/+4
| | | | closed on teleport, don't unnecessarily resend all avatar and object data about that region.
* On teleport to a region that already has a child agent established (e.g. a ↵Justin Clark-Casey (justincc)2014-08-155-37/+48
| | | | | | neighbour) don't resend all the initial avatar and object data again. This is unnecessary since it has been received (and data continues to be received) in the existing child connection.
* Added RestrictEmail to make llEmail only send to avatars email address if true.Kevin Cozens2014-08-141-0/+34
|
* Make RootTerseUpdatePeriod and ChildTerseUpdatePeriod configurable in ↵Justin Clark-Casey (justincc)2014-08-141-0/+3
| | | | | | | | | | [InterestManagement] in OpenSim.ini for experimental purposes. If n > 1 for RootTerseUpdatePeriod only every n terse update is actually sent to observers on same region, unless velocity is effectively zero (to stop av drift). If n > 1 for ChildTerseUpdatePeriod only every n terse update is sent to observers in other regions, unless velocity is effectively zero. Defaults are same as before (all packets are sent). Tradeoff is reduction of UDP traffic vs fidelity of observed av mvmt. Increasing n > 1 leads to jerky observed mvmt immediateley for root, though not on child, where experimentally have gone to n = 4 before jerkiness is noticeable.
* Make some existing reprioritization values changeable outside the scene for ↵Justin Clark-Casey (justincc)2014-08-141-15/+18
| | | | | | test purposes, and use more consise property syntax. No functional change.
* On entity transfer of scene presence, replace polling sleep in ↵Justin Clark-Casey (justincc)2014-08-131-14/+13
| | | | | | | SP.WaitForUpdateAgent() with a triggered event instead. Rapid polls are more expensive than triggered events (several polls vs one trigger) and may be problematic on heavily loaded simulators where many threads are vying for processor time. A triggered event is also slightly quicker as there is no maximum 200ms wait between polls.
* Remove redundant origin region lock in SP.CompleteMovement()Justin Clark-Casey (justincc)2014-08-131-6/+1
| | | | This is already going to be correctly set by WaitForUpdateAgent() earlier on in that method, which is always called where a callback to the originating region is required.
* Only set up the UnackedMethod for an outgoing message if that message is ↵Justin Clark-Casey (justincc)2014-08-131-1/+3
| | | | actually meant to get an ack (because it's reliable).
* Avination's Dynamic Floater Module. This works with Singularity viewer only.Melanie Thielker2014-08-122-0/+290
| | | | | It's WIP in that a dialog builder is on it's way. For now, the XML needs to be handmade.
* Move the inventory request lock introduced in git master a58152bd to ↵Justin Clark-Casey (justincc)2014-08-091-20/+43
| | | | | | | HGInventoryBroker to preserve that behaviour there but allow 2 simultaneous inv requests (chiefly WebFetch) rather than 1 This lock serialized all requests and made the inventory throttling in WebFetch redundant. By moving this lock, two simultaneous requests may now take place which may help with http://opensimulator.org/mantis/view.php?id=7054
* Change RootRotationUpdateTolerance from 0.01 to 0.1 in code as well.Justin Clark-Casey (justincc)2014-08-081-1/+1
|
* Change MaxPoolThreads default in code as well from 15 to 300Justin Clark-Casey (justincc)2014-08-081-1/+1
|
* Fix short help string for show region command.BlueWall2014-08-061-1/+1
|
* OpenSimExtrasBlueWall2014-08-064-179/+41
| | | | Move the experimental extra features functionality into the GridService. This sends default values for map, search and destination guide, plus ExportSupported control to the region on startup. Please watch http://opensimulator.org/wiki/SimulatorFeatures_Extras for changes and documentation.
* Fixed crash when using Allowed/Denied Viewers, and the viewer's name is ↵Oren Hurvitz2014-08-061-2/+2
| | | | | | shorter than one of the test strings This fixes http://opensimulator.org/mantis/view.php?id=7294
* Add RootPositionUpdateTolerance, RootRotationUpdateTolerance, and ↵Justin Clark-Casey (justincc)2014-08-061-0/+7
| | | | | | | RootVelocityUpdateTolerance parameters to [InterestManagement] in OpenSimDefaults.ini These govern when AgentUpdates are sent to observers on position, rotation and velocity changes to an avatar (including the avatar themselves). Higher values reduce AgentUpdate traffic but at a certain level will degrade smoothness of avatar and perceived avatar movement.
* refactor: Rename recent new Client*UpdateTolerance to Root*UpdateTolerance ↵Justin Clark-Casey (justincc)2014-08-063-19/+19
| | | | for better accuracy and consistency with other similar parameters
* Fixed premature closing of the connection in DataSnapshotManagerOren Hurvitz2014-08-051-14/+14
|
* Make currently unfiltered EventQueue log messages only appear now at ↵Justin Clark-Casey (justincc)2014-08-051-16/+24
| | | | | | | | | DebugLevel 1 This covers event queue setup messages and some outgoing messages (e.g. EnableSimulator) In my experience these messages are only useful if you really know what they mean and you're looking for them Otherwise, they're quite spammy. Event queue DebugLevel 1 is enabled with the "debug eq 1" console command
* Fix typo in log messageBlueWall2014-08-021-1/+1
|
* Fix regression in SimulatorFeatures module that would stop OpenSimulator ↵Justin Clark-Casey (justincc)2014-08-011-12/+20
| | | | from starting if no [SimulatorFeatures] section was present in config.
* Add region-side extra feature setting for destination guideBlueWall2014-07-311-0/+4
|
* BulletSim: thread safe handling of list of avatars.Robert Adams2014-07-301-3/+18
| | | | Fix for 7284 which is an enumeration exception when starting up a region.
* Simulator Extra Features ServiceBlueWall2014-07-302-9/+194
| | | | | Provide a means for regions to fetch extra features supported by modern viewers from a central location .
* In TerrainModule, lock m_perClientPatchUpdates when removing entries.Justin Clark-Casey (justincc)2014-07-291-3/+2
| | | | | This may have been the trigger CheckSendingPatchesToClients() dictionary out of sync exceptions in today's load test. Don't need to check ContainsKey() since Remove() returns false on a request to remove a key that it doesn't have
* Implement "scene debug set root-upd-per" for dropping 1 in N root agent ↵Justin Clark-Casey (justincc)2014-07-293-7/+41
| | | | | | | updates except to originator For experimental purposes. Also corrects a previous bug where each terse update sent was counted rather than each set of terse updates to agents.
* Add debug mechanism for only sending 1 in N AgentUpdate packets to child agents.Justin Clark-Casey (justincc)2014-07-293-1/+30
| | | | | | Allows experiments in manually reducing updates under heavy load. Activated by "debug scene set client-upd-per" console command. In a simple test, can send as few as every 4th update before observed movement starts becoming disturbingly rubber-banded.
* Add "debug scene set appear-refresh true|false" to control whether periodic ↵Justin Clark-Casey (justincc)2014-07-291-0/+12
| | | | | | | appearance refresh is active. Corresponds to ResendAppearnceUpdates setting in [Appearance] in OpenSim.ini This was originally implemented to alleviate cloud appearance problems but could be too expensive with large numbers of avatars.
* Make it possible to change avatar position update, rotation and velocity ↵Justin Clark-Casey (justincc)2014-07-293-29/+79
| | | | | | | tolerances on the fly. This is done via "debug scene set client-pos-upd, client-rot-upd, client-vel-upd". For testing purposes.
* Allow the "debug scene set physics false|true" command to work when ↵Justin Clark-Casey (justincc)2014-07-296-29/+66
| | | | | | bulletsim physics is running in a separate thread. This will also allow the "disable physics" setting in the region debug viewer dialog to work in this circumstance.
* minor: make "debug scene set" usage command accurate again from last commit ↵Justin Clark-Casey (justincc)2014-07-291-2/+1
| | | | f6f7585
* Add a "debug scene set child-repri <double>" command that allows child ↵Justin Clark-Casey (justincc)2014-07-293-19/+37
| | | | | | | | reprioritization distance to be changed on the fly. This governs when child agent position changes are sent to neighbouring regions. Corresponding config parameter is ChildReprioritizationDistance in [InterestManagement] in OpenSim.ini For test purposes.
* BulletSim: rearrange code for sensing whether shapes have beenRobert Adams2014-07-263-60/+60
| | | | | | constructed. Add routine to check for failed and use that method rather than checking individual state.
* Revert "Write UDP statistics to the log, not just the console (e.g., "show ↵Justin Clark-Casey (justincc)2014-07-251-37/+32
| | | | | | | | | | | | queues")" Fixes http://opensimulator.org/mantis/view.php?id=7280 It can't be done this way because the stats data needs to show up on the console at all log levels, not just debug. But this means setting it to log at fatal, which is not appropriate for this stuff in the log. I understand the desire but this has to be done some other way, perhaps by (yet another) config parameter. Also, this was already being done with the ClientStatsReport but that also should be done in another way, I think. This reverts commit 5d534127663899cd5592c865b1d00855fce25854.
* Fix recent regression in 3c6becd5 where login or hg login to variable sized ↵Justin Clark-Casey (justincc)2014-07-222-16/+12
| | | | | | | | | regions failed with outdated simulator message. I forgot that a null 'their version' would not be passed over the wire and ends up as an empty string instead (like older simulators). So instead pass through the correct simulator protcol version instead (SIMULATOR/0.3) when querying from login or hg login. Also removes a debug console write for agent limit accidentally left in for the same commit. Relates to mantis 7276
* On login and first HG entrance to a foreign grid, perform query access ↵Justin Clark-Casey (justincc)2014-07-212-11/+16
| | | | checks before proceeding.
* Fixed: after a Hypergrid teleport, attachments often either disappear, or ↵Oren Hurvitz2014-07-211-10/+13
| | | | | | | | | | | appear both on the avatar AND as in-world objects. Another manifestation of this bug is that after a Hypergrid teleport, when you click on one of the avatar's attachments the object doesn't show its name. This means that the viewer knows the attachment is there, but the simulator does not. The problem was caused by treating Hypergrid teleports as if they're Logins (because the teleport flag ViaLogin is enabled). This may fix: http://opensimulator.org/mantis/view.php?id=7238 This may fix: http://opensimulator.org/mantis/view.php?id=7220
* Fixed avatar hovering above the ground. The avatar physics capsule was too tall.Oren Hurvitz2014-07-211-2/+4
| | | | | This is related to http://opensimulator.org/mantis/view.php?id=7067 . But that bug complains about BulletSim, and this fix is for ODE.
* Allow reading the BulletSim detail log while the sim is runningOren Hurvitz2014-07-211-2/+2
|
* XBakes: store the assets only in the sim's local assets cache; not in the ↵Oren Hurvitz2014-07-212-90/+39
| | | | main assets server. Also, some cleanup.
* Fixed problems if an avatar tries to cross regions when the previous cross ↵Oren Hurvitz2014-07-212-136/+134
| | | | | | hasn't completed yet This caused the client to stop responding, and even the simulators to have problems. The solution is to disallow crossing before the previous cross has completed.
* Added locking in AccessModule to prevent possible errors when shutting down ↵Oren Hurvitz2014-07-211-3/+7
| | | | a simulator that has >1 region