Commit Graph

91 Commits (741caee04017afdef55fdf08dcc651f44f1b4782)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 1797601fec minor: correct SceneCommunicationService.LogHeader spelling
Relates to http://opensimulator.org/mantis/view.php?id=7337
2015-01-29 19:09:11 +00:00
Justin Clark-Casey (justincc) beef41f24c Stop simulators attempting to contact registered but offline regions (RegionFlags.Persistent but not RegioNFlags.RegionOnline) on startup and when an avatar completes a teleport.
This eliminates spurious network calls and failure reporting.
This is done by adding RegionFlags to the GridRegion returned data in a backward compatible way as an alternative to multiple IGridService.GetRegionFlags() calls
Using a simulator or a grid service older than this commit will just see previous behaviour.
2015-01-14 19:45:19 +00:00
Justin Clark-Casey (justincc) ec8d21c434 Label all threadpool calls being made in core OpenSimulator. This is to add problem diagnosis.
"show threadpool calls" now also returns named (labelled), anonymous (unlabelled) and total call stats.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc) f6f7585ec5 Add a "debug scene set child-repri <double>" command that allows child 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.
2014-07-29 00:13:29 +01:00
Robert Adams 0300ec45eb Modifications to debugging printouts. No functional changes. 2014-05-31 12:19:51 -07:00
Robert Adams 7aa00632b9 varregion: many replacements of in-place arithmetic with calls to
the Util functions for converting world addresses to region addresses
and converting region handles to locations.
2013-11-28 08:20:16 -08:00
Robert Adams beeec1c467 varregion: elimination of Constants.RegionSize from all over OpenSimulator.
Routines in Util to compute region world coordinates from region coordinates
as well as the conversion to and from region handles. These routines have
replaced a lot of math scattered throughout the simulator.
Should be no functional changes.
2013-11-08 20:53:37 -08:00
Diva Canto b4f1b9acf6 Guard against unauthorized agent deletes. 2013-07-13 21:28:46 -07:00
Justin Clark-Casey (justincc) f2a4d9b99c Fix regression where multiple close agents could be sent to the wrong neighbour region on root agent close.
This was introduced in git master d214e2d0 (Thu May 16 17:12:02 2013)
Caught out by the fact that value types used in iterators act like references and this was dispatched asynchronously.
Should address http://opensimulator.org/mantis/view.php?id=6658
2013-06-07 19:13:24 +01:00
Justin Clark-Casey (justincc) d214e2d0c4 On closing child agents, send separate asynchronous requests to each neighbour rather than sending all closes concurrently on a separate thread.
This is to reduce race conditions where neighbours may be responding erratically, thus mixing up create and close agent requests in time.
This mirrors OpenSimulator behaviour on enabling child agents where each region is contacted separately.
2013-05-16 17:12:02 +01:00
Dan Lake 0dd14ca0a3 Missing parameter in log error message was throwing exception 2012-07-18 13:05:48 -07:00
Justin Clark-Casey (justincc) 9ccb578721 Don't cache regions data on the other unused LocalGridServiceConnector that the module code still sets up even if we're using one directly instantiated from the RemoteGridServiceConnector.
Also improves log messages to indicate which regions are sending/receiving various neighbour protocol messages.
2012-07-13 00:44:00 +01:00
Justin Clark-Casey (justincc) b56673c920 Fix bug with "kick user" reducing agent counts by 2 instead of 1.
This is done by making the kick user command call IClientAPI.Close() rather than routing through Scene.IncomingCloseAgent(), which also called IClientAPI.Close()
DisableSimulator for child agents is moved from IncomingCloseAgent() to RemoveClient(), this is not a functional change since IncomingCloseAgent() always ends up calling RemoveClient()
2012-06-08 00:18:25 +01:00
Diva Canto 0f277dfa17 Addresses mantis #5846 2012-04-08 17:54:59 -07:00
Justin Clark-Casey (justincc) bafef292f4 Take watchdog alarm calling back outside the m_threads lock.
This is how it was originally.  This stops a very long running alarm callback from causing a problem.
2012-02-24 05:25:18 +00:00
Diva Canto 99b9c1a9d5 More improvements on agent position updates: if the target sims fail, blacklist them for 2 min, so that we don't keep doing remote calls that fail. 2012-02-20 10:58:07 -08:00
Diva Canto 20c65ac438 A few more tweaks on position updates and create child agents. Mono hates 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. 2012-02-19 12:28:07 -08:00
Diva Canto 964ec57ffe Changed the async approach on close child agents. This may improve crossings a little bit. 2011-12-16 17:24:50 -08:00
Justin Clark-Casey (justincc) 10a23a823e Get rid of the spurious [WEB UTIL] couldn't decode <OpenSim agent 57956c4b-ff2e-4fc1-9995-613c6256cc98>: Invalid character 'O' in input string messages
These are just the result of an attempt to canonicalize received messages - it's not important that we constantly log them.
Also finally get the deregister grid service message working properly
2011-11-19 01:16:07 +00:00
Justin Clark-Casey (justincc) a3c5f76942 Removed unused and mostly commented out SceneCommunicationService methods
As far as I can see, the SCS is only now used for informing neighbours of up/down status and possibly sending child agent updates and close requests
2011-11-15 18:16:43 +00:00
Justin Clark-Casey (justincc) 20f26eeb17 Remove unused RegionCommsListener/IRegionCommsListener.
All this is now being handled through IEntityTransferModule and SimulationService instead, and has been for some time.
2011-11-15 17:38:55 +00:00
Justin Clark-Casey (justincc) 64784bc0cf remove SceneCommunicationService.OnAvatarCrossingIntoRegion. This stuff is not being used any more - it's now IEntityTransferModule and SimulationService instead 2011-11-15 17:30:58 +00:00
Melanie c7dd7b13a2 Convert SendKillObject to take a list of uint rather than sending one
packet per prim. More to come as we change to make use of this.
2011-11-06 20:38:07 +00:00
Dan Lake 4748c19bdb Refactored "known child region" in ScenePresence. There were 4 different
ways to access the list/dictionary of child regions and locking was
inconsistent. There are now public properties which enforce locks.
Callers are no longer required to create new copies of lists.
2011-10-06 22:47:33 -07:00
Mic Bowman cf24069227 Change UpdateAgent (for changes in agent position) to be sent
once to each simulator rather than once to each region. This
should help with some of the delays caused by multiple outstanding
requests to a single service point.
2011-02-03 12:43:46 -08:00
Diva Canto c18bcf3d8d A bit more frugal on the caller side of closing agents, now that the receiving end is async. No need for so much concurrency. 2011-01-07 10:25:49 -08:00
Melanie e1664b8d38 Fix child agent scoping 2011-01-03 19:42:26 +00:00
Justin Clark-Casey (justincc) df702417dc Remove mono compiler warnings 2010-08-26 16:27:41 +01:00
Diva Canto 19558f380a Fixes the long-standing RegionUp bug! Plus lots of other cleanups related to neighbours. 2010-06-13 19:06:22 -07:00
Justin Clark-Casey (justincc) c4ba2e5dfb minor: remove some compiler warnings 2010-03-03 23:35:23 +00:00
John Hurliman d506449f67 * Removed the unused GridRegion.getInternalEndPointPort() (just use InternalEndPoint.Port). This class is complex enough as it is
* Changed the failed to inform neighbor message from a warning to info, since this will fire for every empty neighbor space
* Made the EnableSimulator/EstablishAgentCommunication log message more verbose and more clear about what is happening
2010-02-23 00:59:24 -08:00
Melanie 10f8c2ea9b Merge branch 'master' into presence-refactor
This merge was very conflicted. I think I got them all, but I can't be sure.
I had to merge to master or risk divergence to the point of unmergeability.
2010-01-16 00:05:08 +00:00
Diva Canto f1c30784ac * General cleanup of Teleports, Crossings and Child agents. They are now in the new AgentTransferModule, in line with what MW started implementing back in May -- ITeleportModule. This has been renamed IAgentTransferModule, to be more generic.
* HGSceneCommunicationService has been deleted
* SceneCommunicationService will likely be deleted soon too
2010-01-15 15:11:58 -08:00
Diva Canto 4de82891a9 Bug in Teleport fixed -- Appearance was missing from AgentCircuitData. 2010-01-13 09:34:08 -08:00
Diva Canto 7356860b48 Several more buglets removed. 2010-01-13 09:17:30 -08:00
Diva Canto 011a1b3798 More appearance woes fixed, this time for child agents. Tested on a grid with 2 simulators. Everything seems to be working, including border crosses. TPs (prim crossing) need love now. 2010-01-12 09:49:27 -08:00
Diva Canto 77e43f4801 Fixed a couple of bugs with Appearance. Appearance is all good now. 2010-01-11 17:30:05 -08:00
Diva Canto c5ea783526 OpenSim/Framework/Communications/Cache deleted. LibraryRootFolder deleted. 2010-01-11 07:51:33 -08:00
Diva Canto 001d369568 CommunicationsManager deleted. 2010-01-11 07:45:47 -08:00
Diva Canto 0c2946031b CommunicationsManager is practically empty. Only NetworkServersInfo is there. 2010-01-10 19:42:36 -08:00
Diva Canto 4dd523b45d * Changed IPresenceService Logout, so that it takes a position and a lookat
* CommsManager.AvatarService rerouted
2010-01-10 15:34:56 -08:00
Diva Canto 1e1b2ab221 * OMG! All but one references to UserProfileCacheService have been rerouted!
* HG is seriously broken here
* Compiles. Untested.
2010-01-10 10:40:07 -08:00
Melanie 81d5a4b6d8 Remove "login disable", "login enable" and "login status" commands. 2010-01-10 03:03:18 +00:00
Diva Canto 6b60f3cce5 A few more inches... Old friends things removed. Less references to UserProfileService. 2010-01-08 20:31:29 -08:00
Diva Canto b63405c1a7 Inching ahead... This compiles, but very likely does not run. 2010-01-08 10:43:34 -08:00
Diva Canto f11a97f12d * Finished SimulationServiceConnector
* Started rerouting calls to UserService.
* Compiles. May run.
2010-01-07 15:53:55 -08:00
Melanie 0b5cdc539c Change teleports so the TeleportFlags are sent to the destination sim. It
can now determine if a connection is from login, teleport or crossing.
Needed for a meaningful banlines implementation
2009-12-29 18:35:06 +00:00
Kunnis d89f3e9811 Getting rid of SimpleRegionInfo and SerializableRegionInfo per Mel
Signed-off-by: Melanie <melanie@t-data.com>
2009-12-12 04:44:32 +00:00
Melanie 05fc504ff3 Remove the old remoting-type interregion code for prim/script crossing 2009-11-26 12:16:42 +00:00
Justin Clark-Casey (justincc) 1324082b90 refactor: move most animation methods from ScenePresence into a new ScenePresenceAnimator class 2009-11-17 15:05:40 +00:00