aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Aggregate script execution times by linksets rather than individual prims.Justin Clark-Casey (justincc)2012-03-161-1/+4
| | | | This is for the top scripts report.
* Replace script-lines-per-second with the script execution time scaled by its ↵Justin Clark-Casey (justincc)2012-03-163-39/+10
| | | | | | | | | | | measurement period and an idealised frame time. The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute. Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100. The actual measurement value should be script execution time per frame but XEngine does not work this way. Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time. This is still not ideal but gives reasonable results and allows scripts to be compared. This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
* Adds a new script command 'modInvoke' to invoke registered functionsMic Bowman2012-03-151-0/+10
| | | | | | | | | from region modules. The LSL translator is extended to generate the modInvoke format of commands for directly inlined function calls. A region module can register a function Test() with the name "Test". LSL code can call that function as "Test()". The compiler will translate that invocation into modInvoke("Test", ...)
* Fix a problem where multiple near simultaneous calls to llDie() from ↵Justin Clark-Casey (justincc)2012-03-151-10/+1
| | | | | | | | | | multiple scripts in the same linkset can cause unnecessary thread aborts. The first llDie() could lock Scene.m_deleting_scene_object. The second llDie() would then wait at this lock. The first llDie() would go on to remove the second script but always abort it since the second script's WorkItem would not go away. Easiest solution here is to remove the m_deleting_scene_object since it's no longer justified - we no longer lock m_parts but take a copy instead. This also requires an adjustment in XEngine.OnRemoveScript not to use instance.ObjectID instead when firing the OnObjectRemoved event.
* More on HG inventory transfers. Move the FireAndForget higher up.Diva Canto2012-03-091-1/+1
|
* Simplify minimap coarse location code by just reference SP.AbsolutePositionJustin Clark-Casey (justincc)2012-03-091-5/+1
| | | | This is rather than checking whether the avatar is sitting and doing its own calculation.
* Get rid of unnecessary ParentID == 0 check on SP.Get_AbsolutePosition since ↵Justin Clark-Casey (justincc)2012-03-091-2/+2
| | | | this is handled by the necessary ParentPart check
* Use SP.ParentPart instead of ParentID in places where it's more efficient ↵Justin Clark-Casey (justincc)2012-03-092-32/+18
| | | | | | | (saving extra null checks, etc.) However, it looks like we should retain SP.ParentID since it's much easier to use that in places where another thread could change ParentPart to null. Otherwise one has to clumsily put ParentPart in a reference, etc. to avoid a race.
* refactor: cleanup SP.HandleAgentSit so that everything is done within one if ↵Justin Clark-Casey (justincc)2012-03-091-15/+8
| | | | (part != null), rather than having unnecessary multiple checks
* Remove a race condition from SP.Set_AbsolutePosition where we assume the ↵Justin Clark-Casey (justincc)2012-03-091-5/+5
| | | | | | ParentPart is still not null if the ParentID != 0 Another thread could come in and stand the avatar between those two instructions.
* Hold a ref to the prim we're sat on rather than querying scene each timeMelanie2012-03-081-27/+29
| | | | the check for significant is carried out. Prevents a deadlock condition.
* Display help commander topics in capitalized form - the commands themselves ↵Justin Clark-Casey (justincc)2012-03-081-1/+1
| | | | | | are still lowercase. Also convert the estate commands to simply AddCommand() calls so that commands from two different modules can be placed in the same category
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimJustin Clark-Casey (justincc)2012-03-081-4/+1
|\
| * Always zero the PhysActor on dupes to prevent side effects on the orignal primMelanie2012-03-071-4/+1
| |
* | Change "help" to display categories/module list then "help ↵Justin Clark-Casey (justincc)2012-03-082-8/+65
|/ | | | | | | | | | | <category/module>" to display commands in a category. This is to deal with the hundred lines of command splurge when one previously typed "help" Modelled somewhat on the mysql console One can still type help <command> to get per command help at any point. Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet). Does not affect command parsing or any other aspects of the console apart from the help system. Backwards compatible with existing modules.
* Stop individually deleting objects at the end of each ObjectTortureTest.Justin Clark-Casey (justincc)2012-03-071-28/+21
| | | | | | We can now do this since the entire scene and all objects within it are now successfully gc'd at the end of these tests. This greatly improves the time taken to run each test (by reducing teardown time, not the time to actually do the test work that we're interested in). Slightly simplifies config read in Scene constructor to help facilitate this.
* Add documentation to make more explicit the difference between OnRezScript ↵Justin Clark-Casey (justincc)2012-03-071-5/+20
| | | | | | | and OnNewScript in the event manager OnNewScript fires when a script is added to a scene OnRezScript fires when the script actually runs (i.e. after permission checks, state retrieval, etc.)
* Add sensor, dataserver requests, timer and listener counts to "xengine ↵Justin Clark-Casey (justincc)2012-03-061-0/+5
| | | | | | status" command. This is for diagnostic purposes.
* Remove unnecessary explicit ElapsedEventHandler in SimReporterJustin Clark-Casey (justincc)2012-03-061-1/+1
|
* Explictly close down the StatsReporter so that we can shutdown its timerJustin Clark-Casey (justincc)2012-03-062-0/+8
| | | | This is another step necessary for the scene to be garbage collected between performance tests
* Remove outdated comment about checking attachment prims in ↵Justin Clark-Casey (justincc)2012-03-021-3/+1
| | | | Scene.PipeEventsForScript()
* Allow a script to receive events if its root prim is in an area where it's ↵Justin Clark-Casey (justincc)2012-03-021-4/+1
| | | | | | | | allowed to run rather than checking its own prim. This allows scripts to run in child prims that are outside region boundaries. This is an interim patch applied from http://opensimulator.org/mantis/view.php?id=5899 though it does not resolve that bug Thanks tglion!
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDan Lake2012-03-021-2/+1
|\
| * minor: remove mono compiler warningJustin Clark-Casey (justincc)2012-03-021-2/+1
| |
* | ScenePresence line endings and fix AllowMovement default to true.Dan Lake2012-03-021-30/+30
|/
* In ScenePresence, removed several private variables used to store public ↵Dan Lake2012-03-011-108/+44
| | | | parameters. They were only used by the get/set and make code harder to refactor.
* Take watchdog alarm calling back outside the m_threads lock.Justin Clark-Casey (justincc)2012-02-241-2/+2
| | | | This is how it was originally. This stops a very long running alarm callback from causing a problem.
* Get rid of some of the identical exception catching in Scene.Update().Justin Clark-Casey (justincc)2012-02-241-17/+1
|
* Stop spurious scene loop startup timeout alarms for scenes with many prims.Justin Clark-Casey (justincc)2012-02-241-3/+9
| | | | | | | | On the first frame, all startup scene objects are added to the physics scene. This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame. This commit also slightly changes the behaviour of timeout reporting. Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check. Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
* Try to resolve some problems with viewers crashing after hitting parcel ↵Justin Clark-Casey (justincc)2012-02-232-10/+20
| | | | | | | | | | banlines or freezing on the banline. This involves 1) On forcible teleport, call m_scene.RequestTeleportLocation() rather than ScenePresence.Teleport() - only EntityTransferModule now should call SP.Teleport() 2) When avatar is being forcibly moved due to banlines, use a 'stop movement' tolerance of 0.2 to requested position rather than 1 This prevents the avatar sometimes being stuck to banlines until they teleport somewhere else. This aims to fix some problems in http://opensimulator.org/mantis/view.php?id=5822
* Merge branch 'master' of melanie@opensimulator.org:/var/git/opensimMelanie2012-02-231-8/+2
|\
| * Remove two spurious m_sceneGraph != null checks in Scene.cs. It's set in ↵Justin Clark-Casey (justincc)2012-02-221-8/+2
| | | | | | | | constructor and never subsequent set to null.
* | Add a position parameter to region crossing of objects. This avoids theMelanie2012-02-232-2/+5
|/ | | | | | potential bad update that places an object at the opposite side of the origin sim for a moment before actually crossing it. Especially important in grids like OSG where lag between sims is high.
* Restore the taskItem null check that I accidentally blatted in 5397a6dJustin Clark-Casey (justincc)2012-02-211-0/+9
| | | | This is a valid check because the caller could supply an invalid uuid.
* Fix problem with dragging child part inventory item to user inventory.Justin Clark-Casey (justincc)2012-02-211-11/+1
| | | | | This fixes the problem by fixing the permissions module to look at root part permissions rather than having to do this for every caller. Resolves http://opensimulator.org/mantis/view.php?id=5569
* Revert "Fix:Cannot drag inventory from child prim into inventory ↵Justin Clark-Casey (justincc)2012-02-211-8/+4
| | | | | | | | http://opensimulator.org/mantis/view.php?id=5569" This reverts commit 15ce73caca9ea6448e34b95d344cbbf5c9507f6d. As per the COMMENTS in http://opensimulator.org/mantis/view.php?id=5569, I was going to fix this in a more general way.
* Fix:Cannot drag inventory from child prim into inventory ↵PixelTomsen2012-02-211-4/+8
| | | | http://opensimulator.org/mantis/view.php?id=5569
* Fix bug where NPCs would establish child agents on other neighbour regions ↵Justin Clark-Casey (justincc)2012-02-211-15/+14
| | | | that had come up after the NPC was created.
* More improvements on agent position updates: if the target sims fail, ↵Diva Canto2012-02-201-5/+2
| | | | blacklist them for 2 min, so that we don't keep doing remote calls that fail.
* Amend to last commit. This should have been committed too.Diva Canto2012-02-191-1/+1
|
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDiva Canto2012-02-192-9/+9
|\
| * Use localy defined name, TPFlags, for Constants.TeleportFlagsBlueWall2012-02-191-6/+6
| |
| * Fix:OmegaX, OmegaY and OmegaZ not saved for child prims ↵PixelTomsen2012-02-191-3/+3
| | | | | | | | | | | | http://opensimulator.org/mantis/view.php?id=5893 Signed-off-by: nebadon <michael@osgrid.org>
* | A few more tweaks on position updates and create child agents. Mono hates ↵Diva Canto2012-02-192-7/+15
|/ | | | concurrent uses of the same TCP connection, and even of the connections to the same server. So let's stop doing it. This patch makes movement much smoother when there are lots of neighbours.
* Route logins according to Estate, Telehub and TeleportFlagsBlueWall2012-02-181-2/+4
|
* Propagate our teleport flags on loginsBlueWall2012-02-181-1/+4
|
* Fix a bug where changing shape parameters of a child prim in a linkset would ↵Justin Clark-Casey (justincc)2012-02-181-2/+2
| | | | | | not persist. Resolves http://opensimulator.org/mantis/view.php?id=5819
* Merge branch 'master' of ssh://opensimulator.org/var/git/opensimDan Lake2012-02-178-24/+159
|\
| * Add new and updated script eventsRobert Adams2012-02-172-3/+67
| |
| * Merge branch 'master' of /home/opensim/src/opensimBlueWall2012-02-171-0/+21
| |\