Commit Graph

669 Commits

Author SHA1 Message Date
Melanie
68b910c1ff Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
2013-03-22 01:01:24 +00:00
Justin Clark-Casey (justincc)
e23a0dcc5d minor: On teleport, signal a child agent before we send the viewer TeleportFinish in order to avoid a theoretical race condition when teleporting to a neighbour.
If we do this after TeleportFinish, then it's possible for a neighbour destination to request the source to create a child agent whilst its still treated as root.
This closes the original presence which we don't really want to do.
This is probably okay (albeit with warnings on the console) but afaics there's no reason not to move the child agent signal.
2013-03-21 23:37:23 +00:00
Justin Clark-Casey (justincc)
46c833810c On a teleport, lock m_agentsInTransit whilst we grab the value to check for completion just to be sure we're not using a thread cached version. 2013-03-21 00:46:08 +00:00
Justin Clark-Casey (justincc)
36651bed71 On the later forms of teleport failure, tell the user if this was because viewer couldn't/didn't connect with destination or if destination didn't signal teleport completion.
Also adds regression test for the case where the viewer couldn't connect with the destination region.
Also refactoring of regression test support code associated with entity transfer in order to make this test possible and the code less obscure.
2013-03-20 23:01:16 +00:00
Robert Adams
1dd2d432f1 For those people collecting and comparing logfiles from servers scattered
around the world, change LogWriter to use DateTime.UtcNow rather than
DateTime.Now.
2013-03-19 11:40:10 -07:00
Melanie
b9146a7922 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/BaseOpenSimServer.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2013-03-15 23:45:32 +00:00
Justin Clark-Casey (justincc)
d3e76730bd Add example code to DOExampleModule to pull data from that previously saved by DAExampleModule when instantiating a dynamc object. 2013-03-15 00:49:35 +00:00
Justin Clark-Casey (justincc)
cb74186888 Add ParentGroup.HasGroupChanged = true setting to DAExampleModule as this is necessary to get attributes to save (though this probably happens anyway due to the prim move) 2013-03-15 00:27:06 +00:00
Melanie
8b657773e4 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/SensorRepeat.cs
2013-03-14 22:34:15 +00:00
Justin Clark-Casey (justincc)
43220afda2 Improve DAExampleModule to show current necessary locking to avoid race conditions with a serialization thread. 2013-03-13 23:42:14 +00:00
Justin Clark-Casey (justincc)
5c53660a7f Add prototype dynamic objects map for scene object parts
This allows region modules to add dynamic objects to SOPs rather than having to continually push and pull OSD dynamic attributes.
This is to explore the original MOAP use case for dynamic attributes where it could be very awkward and possibly time-consuming to keep reconstructing MediaEntrys from stored DynamicAttributes.
This commit adds a DOExampleModule to demonstrate/evolve this code.
Dynamic objects involve no storage or persistence changes - the 'backing store' for any data that does need to be saved will remain the DAMap.
DOExampleModule in this commit only attaches a fresh dynamic object.  Actually constructing this from stored dynamic attributes and handling persistence is left for later.
These changes should affect no existing functionality, though it may or may not reveal necessary changes in DAMap down the road.
2013-03-13 22:59:06 +00:00
Melanie
710381e838 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Tests/SceneObjectUndoRedoTests.cs
2013-03-13 02:02:46 +00:00
Justin Clark-Casey (justincc)
fb1211ad5e Add DisableInterRegionTeleportCancellation option in [EntityTransfer] section of OpenSim.ini. False by default.
This option allows the simulator to specify that the cancel button on inter-region teleports should never appear.
This exists because sometimes cancellation will result in a stuck avatar requiring relog.
It may be hard to prevent this due to the protocol design (the LL grid has the same issue)
In small controlled grids where teleport failure is practically impossible it can be better to disable teleport cancellation entirely.
2013-03-12 23:01:27 +00:00
Justin Clark-Casey (justincc)
c43d4b5572 Improve teleport cancellation in some circumstances, though cancelling teleports is still not recommended.
Previously, hitting the cancel button on a teleport would cancel on the client side but the request was ignored on the server side.
Cancel would still work if the teleport failed in the early stages (e.g. because the destination never replied to early CreateAgent and UpdateAgent messages).
But if the teleport still completed after a delay here or later on, the viewer would become confused (usual symptom appears to be avatar being unable to move/reteleport).
This commit makes OpenSimulator obey cancellations which are received before it sends the TeleportFinish event queue message and does proper cleanup.
But cancellations received after this (which can happen even though the cancel button is removed as this messages comes on a different thread) can still result in a frozen avatar.
This looks extremely difficult and impossible to fix.
I can replicate the same problem on the Linden Lab grid by hitting cancel immediately after a teleport starts (a teleport which would otherwise quickly succeed).
2013-03-12 22:16:09 +00:00
Melanie
70f0587558 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
2013-03-08 01:07:05 +00:00
Justin Clark-Casey (justincc)
5751ecde52 Add code for testing event queue messages recevied on region cross.
This is currently disabled pending an improvement in the test code to properly add avatars when an event queue module is present.
2013-03-06 23:06:00 +00:00
Justin Clark-Casey (justincc)
b272b91317 minor: Fix mono compiler warning in MonitorModule 2013-03-05 23:59:39 +00:00
Melanie
81552f41c6 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/Caps/MeshUploadFlagModule.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/OptionalModules/Avatar/Attachments/TempAttachmentsModule.cs
2013-03-05 23:57:53 +00:00
Melanie
f39e4abf0e Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
2013-03-03 13:24:37 +00:00
Melanie
eb9458fd7e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneManager.cs
2013-02-28 21:20:07 +00:00
Diva Canto
bb44758179 Switched to using the other Util function with a default value. 2013-02-27 20:59:16 -08:00
Diva Canto
f1010d7b15 Moved the HG default variables out of [Startup] and into their own section [Hypergrid] in *Common.ini.example. Backwards compatible for now. 2013-02-27 20:49:41 -08:00
Melanie
54ee95dd8e Merge branch 'master' into careminster 2013-02-26 13:34:20 +00:00
Robert Adams
aa538fe36f Add StatsManager registration for region specific stats as collected
by MonitorModule. Left existing functionality (command line and HTTP
fetch) and just added StatsManager registration.
2013-02-24 07:48:02 -08:00
Melanie
405da93589 Revert "Allow TeleportCancel packets to reset the transfer state machine"
This reverts commit 0e17887e03.
2013-02-24 00:38:57 +01:00
Melanie
ee18db027c Make sure state machine is reset if crossing is aborted 2013-02-23 21:00:05 +00:00
Melanie
e3ea2c4bee Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
2013-02-23 20:37:09 +00:00
Diva Canto
d7115cfd46 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-02-22 15:58:06 -08:00
Diva Canto
0e8289cd00 Added new Util function for reading config vars that's more generic than the one I added yesterday -- this is for helping move config vars out of [Startup] 2013-02-22 15:57:33 -08:00
Justin Clark-Casey (justincc)
ccb7cce819 Make reset of EntityTransferStateMachine for an avatar transfer always happen despite unexpected exceptions.
This means that if such an exception does occur, the region does not need to be reset before that user can teleport from it again.
This is all Oren's code from his patch in http://opensimulator.org/mantis/view.php?id=6374 but I've chosen to split it in two.
2013-02-22 21:59:00 +00:00
Melanie
9534d5f929 Merge branch 'master' into careminster 2013-02-22 01:28:54 +00:00
Diva Canto
e515cdddec Simplification of HG configs: HomeURI and GatekeeperURI now are defined as default under [Startup]. They can then be overwritten in the other sections (but probably shouldn't). I kept the existing code for backwards compatibility, so this should not cause any breaks from people's current configurations. But people should move to have these 2 vars under [Startup] -- see OpenSim.ini.example and Robust.HG.ini.example. And yes, both names now end with "URI" for consistency. 2013-02-21 17:26:19 -08:00
Robert Adams
16bb40229b Add flush after write feature to LogWriter 2013-02-20 16:13:49 -08:00
Melanie
8c0b9080a4 Fix an issue where the viewer would request the seed cap before
there was a handler for it.
2013-02-18 21:09:14 +01:00
Melanie
192e1e7cf0 Merge branch 'master' into careminster 2013-02-16 05:37:12 +00:00
Justin Clark-Casey (justincc)
e9cc22fea4 Add regression test TestSaveNonRootFolderToIar 2013-02-16 00:26:21 +00:00
Melanie
ea8c5ba707 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2013-02-15 21:42:16 +00:00
teravus
71862f34b6 * Handle null check on configs in module startup so that the the code can be run on 'stop on handled and unhandled null reference exceptions' mode without pausing during startup a bunch of times. I don't think exceptions were really meant for replacing a single if statement... 2013-02-14 18:52:11 -05:00
Justin Clark-Casey (justincc)
0ad07eb44d minor: remove some mono compiler warnings 2013-02-14 21:29:35 +00:00
Melanie
d3892bbd06 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
	OpenSim/Framework/Servers/VersionInfo.cs
	OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2013-02-05 21:30:12 +00:00
Justin Clark-Casey (justincc)
1fc9f282fa Merge branch 'dynamic-attributes2' 2013-02-05 00:35:15 +00:00
Melanie
e497cf6f04 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2013-01-31 20:16:45 +00:00
Dan Lake
17440d8a29 Added option for UUID as command parameters. This lets the command handle the UUID parsing and type checking before the command is executed. 2013-01-31 11:14:43 -08:00
Oren Hurvitz
23f0610f0c Disabled DAExampleModule 2013-01-25 04:03:28 +00:00
Oren Hurvitz
8b4441d940 Changed DAMap to be the container of "data stores", which are OSDMaps. Store names must have at least 4 characters. 2013-01-25 04:03:18 +00:00
Justin Clark-Casey (justincc)
a6d9c26365 Encapsulate an OSDMap in DAMap (was DynAttrsOSDMap) rather than inheriting from it
This is the easier way to give us control over locking, rather than asking that OSDMap IDictionary methods be virtual
2013-01-25 04:03:11 +00:00
Justin Clark-Casey (justincc)
d3095e2649 Add DAExampleModule to demonstrate dynamic attributes
This module demonstrates that we can add an arbitrary persisted value to SOP without any changes to core code.
Every time the object is moved, the move record is updated and the users in the scene alerted
The number of moves is persisted over server restarts in sqlite
2013-01-25 04:03:07 +00:00
Melanie
fc1c77b42d Merge branch 'avination' into careminster 2013-01-23 19:31:27 +00:00
Melanie
997d53e532 EXPERIMENTAL - Comment out the check for the agent already being in transit
to prevent avatars being locked into their sim on a failed teleport.
May have side effects and must be revisited to fix right.
2013-01-23 18:17:49 +01:00
Melanie
0e17887e03 Allow TeleportCancel packets to reset the transfer state machine 2013-01-21 01:46:40 +01:00