Commit Graph

22185 Commits (17e920aacd800cf8f81ac705c5047723434fe974)

Author SHA1 Message Date
Robert Adams 2ed3a918bd Merge branch 'master' into bullet-2.82 2014-09-21 07:11:00 -07:00
BlueWall 519c753e46 This fixes the Scene thread renaming issue 2014-09-17 20:25:27 -04:00
BlueWall 96a2449122 Undo "Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects.""
Fix for break in next commit

This reverts commit 376fab1402.
2014-09-17 20:03:54 -04:00
Justin Clark-Casey (justincc) 1f40630a9a Add eeyore to contributors 2014-09-17 23:45:53 +01:00
Edward 427240f935 Changes to be committed: modified: OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs modified: OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs This solves mantis bug# 5005: llRegionSay script does not trigger ChatFromWorld event. This was solved by adding World.SimChat() command to the llRegionSay() function (per suggestion of DrCuriosity). Additionally this fixes llRegionSayTo() which was also not functioning by adding a World.SimChat() command and adding a new SimChatToAgent() overrided function to Scene.PacketHandlers.cs This is the second patch revision. Corrections made to the position of World.SimChat() and removal of tabs per suggestion by justincc. 2014-09-17 23:37:18 +01:00
BlueWall 376fab1402 Revert "Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects."
This reverts commit af286d5fcb.
Issue with Jenkins builds
2014-09-17 18:11:41 -04:00
BlueWall af286d5fcb Small changes to threading to send thread names to unmanaged threads. Needs Mono 3.6+ to see thread names in utilities like top -H . Some formatting of the thread name to fin in the 16 byte limit on Linux. Please test on Windows to see if the work has any adverse effects. 2014-09-17 17:56:10 -04:00
Justin Clark-Casey (justincc) 2d3072f053 When osNpcMoveToTarget() is called for a sitting avatar then silently do nothing rather than throwing an error.
Resolves http://opensimulator.org/mantis/view.php?id=7311
2014-09-12 23:37:44 +01:00
Justin Clark-Casey (justincc) 3f35c5a421 Add cinderblocks and bobshaffer2 to contributors. 2014-09-12 00:36:45 +01:00
Justin Clark-Casey (justincc) 70953dbfcd Fix issues where setting llSetTextureAnim(FALSE... did not work properly).
I ended up amalgamating patches from http://opensimulator.org/mantis/view.php?id=7313 and http://opensimulator.org/mantis/view.php?id=7318
Thanks a lot to both bobshaffer2 and cinderblocks.
2014-09-12 00:34:39 +01:00
Justin Clark-Casey (justincc) a3bd708e77 Fix regression from recent a02dae5 where stand positions are no longer correct when a sit target is specified.
Adjusts stand position using just avatar position relative to the root prim instead.
Fixes http://opensimulator.org/mantis/view.php?id=7315 and preserves previous fix for http://opensimulator.org/mantis/view.php?id=7299
2014-09-11 20:59:20 +01:00
Justin Clark-Casey (justincc) b4ce71df1e Make proper fix for last commit wrt Mantis 7317 by replacing disallowed c char and not literal 'c' 2014-09-09 18:57:02 +01:00
Justin Clark-Casey (justincc) e271607bef For stat names containing periods, replace with '#' rather than throw exception
In relation to http://opensimulator.org/mantis/view.php?id=7317
2014-09-09 18:56:58 +01:00
Robert Adams e5b269e9a0 Merge branch 'master' into bullet-2.82 2014-09-05 21:20:02 -07:00
Justin Clark-Casey (justincc) 41f2f3132b For monitoring purposes, start non-timeout tasks (which do not currently use a threadpool) via Watchdog.RunInThread() rather than Util.RunThreadNoTimeout()
The functionality is the same but this allow us to monitor such tasks via "show threads" and abort them for test purposes, etc.
Also extends thread names to provide more info (e.g. SendInitialDataToClient says what client the task is for).
2014-09-05 23:20:59 +01:00
Justin Clark-Casey (justincc) e4d16e6795 Make LLUDP output queue refill thread active by default, since load tests have shown that this has better scalability.
For testing, previous behaviour can be restored with the console command "debug lludp oqre stop" at runtime.
2014-09-04 18:24:59 +01:00
Robert Adams 47ac103df7 Merge branch 'master' into bullet-2.82 2014-09-03 21:21:01 -07:00
Justin Clark-Casey (justincc) 73e20b7f5f For processing outbound http requests in the XMLRPCModule, start the thread through Watchdog for monitoring and stat purposes. 2014-09-04 00:22:30 +01:00
Justin Clark-Casey (justincc) 0692ebfbc6 Start long-lived thread in IRCConnector via watchdog rather than indepedently, so that it can be seen in "show threads" and stats 2014-09-04 00:00:51 +01:00
Justin Clark-Casey (justincc) 4b04d22899 Don't need to check separate physics status in bulletsim update since that method is only run for an indepndent thread anyway.
Also remove bulletsim monitored thread from watchdog on shutdown.
2014-09-03 23:53:04 +01:00
Justin Clark-Casey (justincc) 6e6512eb4a Make bulletsim thread alarm if no update for 5 seconds.
The cost is minimal (also done for scene loop) at the benefit of telling us if this thread simply stops for some reason.
2014-09-03 23:43:59 +01:00
Justin Clark-Casey (justincc) 29400538b7 minor: fix indenting from previous commit b08ab1e 2014-09-03 23:37:20 +01:00
Justin Clark-Casey (justincc) b08ab1e375 If BulletSim is running on its own threads, start this thread via the thread watchdog.
This allows us to see the presence of the permanent thread via the "show threads" console comand.
Also adds the region name to the thread name.
2014-09-03 23:35:18 +01:00
BlueWall e19d1ecce8 Cleanup some unused code and configuration entries 2014-09-03 17:09:57 -04:00
Kevin Cozens 40c579addf Don't show the ScrLPS data twice in the WebStats based statistics page. 2014-09-03 14:17:37 -04:00
BlueWall 3e5bc75f89 Remove the 32 bit launchers as discussed at OpenSimulator Office Hour 9//2/14 http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2014-09-02. Find the binaries, sources and README in ./share/32BitLaunch if needed. 2014-09-03 13:00:09 -04:00
BlueWall e8ca900ef8 Move the 32 bit launchers as discussed at OpenSimulator Office Hour 9//2/14 http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2014-09-02. 2014-09-03 12:57:29 -04:00
Justin Clark-Casey (justincc) ac866a1c46 Add [EntityTransfer] AllowAvatarCrossing setting to determine whether avatars are allowed to cross regions at all.
Defaults to true.  For test purposes.
2014-09-03 00:25:56 +01:00
Justin Clark-Casey (justincc) d582db6132 Fix recent regression from 473c5594 where camera started to judder on moving vehicles.
Other parts of OpenSimulator are relying on SP.Velocity == 0 for vehicles.
So add and use SP.GetWorldVelocity() instead when we need vehicle velocity, along the same lines as existing SP.GetWorldRotation()
2014-09-02 23:39:52 +01:00
Robert Adams 3d65d22138 Merge branch 'master' into bullet-2.82 2014-08-30 08:29:39 -07:00
Justin Clark-Casey (justincc) 473c559478 As per the LL grid, if an avatar is sitting then return it's velocity relative to the region rather than relative to its seat.
Resolves http://opensimulator.org/mantis/view.php?id=7175
2014-08-30 01:09:33 +01:00
Justin Clark-Casey (justincc) bb7c88805a As per the LL grid, for attachments make llGetObjectDetails() OBJECT_VELOCITY return the avatar's velocity and not always Vector3.Zero.
This completes http://opensimulator.org/mantis/view.php?id=7177
2014-08-30 00:58:47 +01:00
Justin Clark-Casey (justincc) 4d8bc007e2 minor: fix wrong indentation in previous commit 0cc3cd 2014-08-30 00:54:36 +01:00
Justin Clark-Casey (justincc) 0cc3cdfb4e As per the LL grid, for attachments make llGetObjectDetails() OBJECT_ROT return the avatar's rotation.
This is already the behaviour of OBJECT_POS.
Partially satisfies http://opensimulator.org/mantis/view.php?id=7177
2014-08-30 00:48:59 +01:00
Justin Clark-Casey (justincc) a02dae566c Fix issue where moving a seated avatar would not adjust their subsequent stand position.
Addresses http://opensimulator.org/mantis/view.php?id=7299
2014-08-30 00:26:18 +01:00
Justin Clark-Casey (justincc) 099212167b Implement STATUS_BLOCK_GRAB_OBJECT in llSetStatus()/llGetStatus() and correct effect of STATUS_BLOCK_GRAB
As per http://wiki.secondlife.com/wiki/LlSetStatus
Setting STATUS_BLOCK_GRAB_OBJECT prevents or allows move of a physical linkset by grab on any prim.
Setting STATUS_BLOCK_GRAB prevents or allows move of a physical linkset by grab on a particular prim.
Previously, setting STATUS_BLOCK_GRAB would prevent drag via all prims of the linkset.
2014-08-29 23:40:21 +01:00
Justin Clark-Casey (justincc) 1b75ec5647 Ignore whitespace when reading serialized XML objects.
This was previously effectively being done by XmlDocument in the multiple passes through the XML.
This change tells XmlReader to ignore whitespace.  This also means changing arguments to use XmlReader instead of XmlTextReader (a descendent of XmlReader) directly.
XmlReader.Create() has been the recommend way to create XML readers since .NET 2.0 as per MS SDK and is the only way to specific ignore whitespace settings.
2014-08-29 19:08:23 +01:00
Justin Clark-Casey (justincc) 3555c0c3f3 Fix recent regression test TestDeserializeXmlObjectWithOtherParts() which was not meant to indent the input xml 2014-08-29 18:14:47 +01:00
Justin Clark-Casey (justincc) 305c3e668a Add regression test for deserializing xml objects with more than one non-root part. 2014-08-29 18:06:29 +01:00
Justin Clark-Casey (justincc) 1a3ffda852 minor: Eliminate more unnecessary code copying individual parameters for Vector3 copying in Scene - this is not necessary as Vector3 is a value type 2014-08-28 18:37:34 +01:00
Justin Clark-Casey (justincc) f132f642b2 On code section that rezzes single objects and attachments, reduce CPU use by reading asset XML a single time with a stream reader rather than multiple times.
Reading large XML documents (e.g. complex attachments) is CPU expensive - this must be done as few times as possible (preferably just once).
Reading these documents into XmlDocument is also more resource intensive than using XmlTextReader, as per Microsoft's own publication "Improve .NET Application Performance and Scalability"
Optimization of other cases will follow if this change is successful.
2014-08-28 18:15:33 +01:00
Justin Clark-Casey (justincc) b1ff78f4d8 Don't allow update timer to invoke another scene update if the previous is still active. 2014-08-26 18:52:09 +01:00
Justin Clark-Casey (justincc) bafa82eb12 Remove race conditions from where SP.AbsolutePosition could change between the various property checks. 2014-08-26 18:25:14 +01:00
Justin Clark-Casey (justincc) 42bb122232 Fix frame times when updating scene on timer. 2014-08-26 18:13:38 +01:00
Justin Clark-Casey (justincc) 64f640f901 Implement experimental non-default mechanism to update scene via a timer rather than a persistent thread with sleep.
This is to see if an inaccuracy in sleep times under load is responsible for increase in frame times even when there is spare time still available.
Can currently only be activated by setting "debug scene set update-on-timer true".
Can be switched between timer and thread with sleep updates whilst the scene is running.
2014-08-26 18:13:38 +01:00
Robert Adams b3e423303f Merge branch 'master' into bullet-2.82 2014-08-26 06:47:50 -07:00
BlueWall aeadddf77a Add back URL endings in examples 2014-08-25 20:29:46 -04:00
Justin Clark-Casey (justincc) fabab7414f Remove database connection locking in MySQLXAssetData. This is unnecessary as connections aren't shared and transactions are already in place where necessary. 2014-08-22 20:34:33 +01:00
Justin Clark-Casey (justincc) 0cb805a64c Remove query locking in MySQLUserProfileData. This is not necessary as the connection is not shared. 2014-08-22 20:28:56 +01:00
Justin Clark-Casey (justincc) 709038aa2a Remove some use of database connection locking from MySQLSimulationData - this has not been necessary for some time as database connections are not shared.
However, many locks remain since they may effectively be providing transactionality in some operations (e.g. prim updates across multiple tables).
These are candidates for being replaced with proper database transactions, since this would not block unrelated operations (e.g. land save and object save)
or unrelated operations on the same tables (e.g. storage of one linkset whilst another is being removed).
In practice, any performance deg due to contention is probably rare and short lived as the major prim operations are performed in memory and only persisted some time afterwards.
2014-08-22 20:23:48 +01:00