aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Removed the List<NewForce> m_forceList from ScenePresence, as there wasn't ↵MW2009-06-281-20/+18
| | | | any need for a list, as only the last entry in it was acted on. So it now has a single NewForce m_nextVelocity , which is updated (rather than a NewForce object being created every AgentUpdate). So as well as cutting out all the adds and clearing of the list, it also removes the creation of upto 100+ new objects per second per avatar.
* Update svn properties.Jeff Ames2009-06-272-244/+244
|
* Fixed null bug, which was making unit tests failMW2009-06-261-3/+7
|
* Extracted the code that handles the sending of prim updates to the client, ↵MW2009-06-264-159/+269
| | | | | | | from ScenePresence into ISceneViewer/SceneViewer. Currently ScenePresence "has" a ISceneViewer, although if we had a proper Node based scenegraph then it would most likely be attached directly to the nodes. By extracting this code, it should make it easier to experiment with different ways of managing the update process. [Next step to make this module based, could be to create a SceneViewerFactoryModule]
* Make delete-region delete the section from an ini file. Will delete the wholeMelanie Thielker2009-06-261-2/+28
| | | | | | file if it has no sections left.
* Make create region save the new region to ini file format if the nameMelanie Thielker2009-06-251-10/+28
| | | | | | | specifies an ini file. If the ini file exists, the region will be added.
* Added a note to the ScenePresence.UpdateMovement() method, to remind ↵MW2009-06-251-1/+1
| | | | everyone that the so called "forces" are actually velocities.
* Applied patch from mantis #3820 which changed the clearing of the ↵MW2009-06-251-20/+16
| | | | | | | ScenePresence.m_forcesList, so it used the List.Clear method rather than doing a loop through the list and manually removing each item. Thanks dslake. I also fixed the issue where the code also loops through the m_forcesList and copies each force to the ScenePresence's movementVector. Which resulted in only the last force in the list actually be acted on. As each copy overrode the last one. So now it only copies the last force in the list.
* moving the m_PendingAcksMap.Remove() out of the foreach and clearingDr Scofield2009-06-251-1/+1
| | | | | | it instead after the foreach as we are going through the whole m_PendingAcks list anyhow
* have to clear m_PendingAcks not m_PendingAcksMapDr Scofield2009-06-251-1/+1
|
* hmph: missing '{'/'}', thx to nebadon for reporting it and rob smartDr Scofield2009-06-251-3/+10
| | | | | for spotting it!
* fixing windows specific compile error.Dr Scofield2009-06-251-32/+32
|
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-06-251-1/+1
| | | | | | | | | | | | | | | After noticing on several occasions that the thread counts we see when running OpenSIm were bordering on the astronomical I decided to seriously investigate. After much poking I discovered that the problem is actually very simple. The XEngine secition of the example ini says that the timeout for an iden thread is in seconds, and an example value of 60 is specified. In fact, this is actually resulting in a 60mS idle timeout, which is not normally enough for a smart thread to survive. I have added a multiplier to the XEngine constructor so that the number now matches the published behavior.
* cosmetic changeDr Scofield2009-06-251-2/+1
|
* streamlining m_NeedAck logicDr Scofield2009-06-251-31/+29
|
* streamling m_PendingAcks logic to get rid of gratuitous List<...>Dr Scofield2009-06-251-20/+20
| | | | | instantiations and object copies.
* commenting out expensive bits (who in the world even uses SetClientInfo()?)Dr Scofield2009-06-251-29/+29
|
* changing DropSend()'s foreach loop so that it does not copy theDr Scofield2009-06-251-5/+11
| | | | | LLQueItem m_NeedAck queue each time.
* commenting out rather expensive bits of GetClientInfo() --- the onlyDr Scofield2009-06-251-13/+20
| | | | | | | | 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).
* more efficient way of checking for already seen packets:Dr Scofield2009-06-251-29/+47
| | | | | | | | | | | - 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
* adding logging statement for receive buffer sizeDr Scofield2009-06-251-0/+2
|
* - adds the possibility of setting the socket receive buffer sizeDr Scofield2009-06-251-35/+51
| | | | | | | | | | | | option for LLUDPServer. On windows .NET the default socket receive buffer size is 8192 bytes, on recent linux systems it's about 111K. both value can be a bit small for an OpenSim instance serving many clients. The socket receive buffer size can be configured via an OpenSim.ini config option - adds a general catch clause to LLUDPServer.OnReceivedData() to prevent it submerging when an unexpected Exception occurs.
* From: Alan Webb <alan_webb@us.ibm.com>Dr Scofield2009-06-253-75/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change moves texture send processing out of the main packet processing loop and moves it to a timer based processing cycle. Texture packets are sent to the client consistently over time. The timer is discontinued whenever there are no textures to transmit. The behavior of the texture sending mechanism is controlled by three variables in the LLCLient section of the config file: [1] TextureRequestRate (mS) determines how many times per second texture send processing will occur. The default is 100mS. [2] TextureSendLimit determines how many different textures will be considered on each cycle. Textures are selected by priority. The old mechanism specified a value of 10 for this parameter and this is the default [3] TextureDataLimit determines how many packets will be sent for each of the selected textures. The old mechanism specified a value of 5, so this is the default. So the net effect is that TextureSendLimit*TextureDataLimit packets will be sent every TextureRequestRate mS. Once we have gotten a reasonable feeling for how these parameters affect overall processing, it would be nice to autonmically manage these values using information about the current status of the region and network. Note that this also resolves the pathologcal problem that previously existed which was that a seated avatar generated very few in-bound packets (theoretically) and would therefore be the least able to retrieve the images being displayed by a projector script.
* - fixes a "collection out of sync" exception in the ODE physicsDr Scofield2009-06-253-38/+55
| | | | | | | engine, caused by an "avatar infinite position" occurring under heavy load. - fixes "value too small" exception in ChatModule
* Allow "Take Copy" with copy only permissions if you own the object. TransMelanie Thielker2009-06-241-2/+10
| | | | | | | is only required when taing an object you don't own, now. Fixes Mantis #3838
* Reading GroupPosition, but setting OffsetPosition in undo doesnt' seem right.Melanie Thielker2009-06-241-2/+2
| | | | | | | This may fix the Mantii where individual prims ctrl-z to nirvana, but it's not tested.
* Also fix group role membership packet sizes to stay safely below MTUMelanie Thielker2009-06-231-29/+41
|
* Can I be this dumb?Melanie Thielker2009-06-231-1/+0
|
* Fix an error in group membership sending when the memebr count exceeds 60Melanie Thielker2009-06-231-2/+6
| | | | | | Also reduce limit to 40 to allow for last logon dates and titles
* Allow the member list of groups with more than 70 members to be viewedMelanie Thielker2009-06-231-36/+42
| | | | | | without crashing
* Commenting out the jhurliman fix, since our libOMV doesnt' have those fieldsMelanie Thielker2009-06-231-5/+5
| | | | | | yet.
* Correct an uninitialized field in a packet. Thanks, jhurliman.Melanie Thielker2009-06-231-0/+8
| | | | | | Fixes Mantis #3831
* Committing RemoteUserServiceConnector out connector, local user serviceMelanie Thielker2009-06-222-5/+26
| | | | | | connector and the glue code.
* Formatting cleanup, ignore some generated files.Jeff Ames2009-06-222-3/+3
|
* Update svn properties.Jeff Ames2009-06-2210-1199/+1199
|
* * Panda no like LongRunningAttribute, no? Me now reverting minuscule fix, ↵lbsa712009-06-221-1/+1
| | | | yes? Panda happy, eh?
* * Minuscule CC fixlbsa712009-06-221-0/+2
|
* * Added SceneTests and SceneBaseTestslbsa712009-06-224-2/+220
| | | | | | * Changed some fields to protectesd to enable faking
* Suppress exception dump when informing friends in another region about loginMelanie Thielker2009-06-211-0/+9
| | | | | | | or logoff. Regions come and go and we can't throw just because someone took their region off the grid, or crashed.
* Correct the behaviro of group deeding and llGetOwner() within deeded objectsMelanie Thielker2009-06-212-3/+15
|
* Do llEscapeURL with Uri.EscapeDataString instead of Uri.EscapeUriString.Homer Horwitz2009-06-211-1/+1
| | | | | | Not exactly right, according to the LSL docs, but similar enough, I hope. Fixes Mantis #3825.
* Publish a method on ICompiler to generate the CIL assembly pathMelanie Thielker2009-06-213-0/+9
| | | | | | Cause group deeding to apply next owner perms
* Properly reset a vehicle's status to VEHICLE_TYPE_NONE when requestedMelanie Thielker2009-06-191-0/+1
|
* When a shared module hooks OnClientClosed, it has no way of findingMelanie Thielker2009-06-199-13/+13
| | | | | | | | | out which client connection has closed. So, in multi-region sims, things can get messy fast. This introduces a second parameters, which is a Scene object ref. Minor adjustments to custom modules may be required due to this change.
* Thanks cmickeyb for a patch that checks for null assets in Cenome asset ↵Dahlia Trimble2009-06-191-3/+7
| | | | cache - Mantis #3819
* From: Rob Smart <SMARTROB@uk.ibm.com>Sean Dague2009-06-192-8/+13
| | | | | Makes an avatars personal voice indicator work with Freeswitch (though not other avatars indicators)
* From: Chris Yeoh <yeohc@au1.ibm.com>Sean Dague2009-06-198-14/+45
| | | | | | This patch ensures that the touch positions are set during touch_end events (currently only working for touch_start and touch events).
* Thanks Michelle Argus for Mantis #0003742: Terrain editor - Flatten tool ↵Dahlia Trimble2009-06-183-38/+21
| | | | lowers Land
* * Corrected CAPS namespacesArthur Valadares2009-06-1817-24/+24
| | | | | * "luke, use the sed"
* Fix an uninitialized data block. Thanks, jhurlimanMelanie Thielker2009-06-171-0/+1
|