Commit Graph

1247 Commits (3b06891252ba42cb9c7d80171dd914f770df7d35)

Author SHA1 Message Date
UbitUmarov dac32c4e5a change CanObjectEntry() to use a SOG 2017-01-20 14:26:24 +00:00
UbitUmarov fe9a785ecc object Take and TakeCopy are for in scene SOPs and SPs and permitions module is NOT a shared module 2017-01-19 11:34:40 +00:00
UbitUmarov 1113407280 add more calls to effective permissions aggregation; do not change groupmask on deed 2017-01-17 01:22:44 +00:00
Melanie Thielker 568614af2c Remove the last instance of the legacy slam but being set
New objects now get only the real slam bit.
2017-01-16 14:53:42 +00:00
UbitUmarov fb86e41561 fix incoerent definition of Slam bit (bits 3 and 4 used in diferent
places.) this may still be wrong on other places; Do not loose folded
permitions,  WARNING MASTER IS NOW UNSTABLE. permissions are still broken"
2017-01-14 14:21:50 +00:00
Melanie Thielker da51edb5fe Fix the new permissions error introduced with the inventory fix
The fix to allow setting perms in inventory accidentally caused folded
permissions to be used as a mask for the next owner perms. The current
solution isn't optimal but better than anything else we have had.
Legacy objects may experience a net loss of permissions if trying to
set their perms in inventory, this is deemed preferable to the prior
privilege escalation possibility. New items will handle properly.
2017-01-13 23:47:26 +00:00
Melanie Thielker 6a066480cc Squelch noisy debug message that happens on every single rez 2017-01-07 00:43:42 +00:00
Melanie Thielker ff945867a3 Squelch red ink for login cancel by the user during circuit setup 2017-01-07 00:35:09 +00:00
Melanie Thielker e526e8c5e2 Fix the long-standing bug that object permissions set in inventory were lost
NOTE: Items rezzed by users using 0.8 or older will still exhibit broken
behaviour. Until 0.8 becomes end of life, this fix will not produce
dependable results on grids with mixed versions. Grids based on 0.9 will
now work properly.
2017-01-06 17:05:00 +00:00
Melanie Thielker da76224eac Remove more calls to that horrible function 2017-01-06 13:18:22 +00:00
Melanie Thielker 4385d7d693 Fix errors introduced by incomplete understanding of what folded perms are 2017-01-06 13:17:43 +00:00
Melanie Thielker ad8915f154 Restructure god level and permissions
Create a class GodController which controls all aspects of god level,
viewer modes and user levels at ScenePresence level.
2017-01-06 00:55:14 +00:00
UbitUmarov 1fb01a0099 add config option automatic_gods. With this option true, users that can be Gods will have that level automaticly without the need request on viewer; Propagate current god level to nearby regions (with local checks) 2017-01-05 21:21:15 +00:00
Melanie Thielker b16abc8166 Massive tab and trailing space cleanup 2017-01-05 19:07:37 +00:00
AliciaRaven d49a5374c3 Make it more unlikely that a script teleport will be caught by default region landing point. 2016-12-10 18:03:05 +00:00
UbitUmarov 9042aa8968 add missing sp Intransit control 2016-12-07 04:56:35 +00:00
UbitUmarov f1c6769ca5 set HasGridUserTried on usercache of NPCs 2016-12-07 02:14:26 +00:00
Mandarinka Tasty 7c566dca5a The new Constant: integer OBJECT_REZZER_KEY = 32;
Signed-off-by: Mandarinka Tasty <mandarinka.tasty@gmail.com>
Signed-off-by: UbitUmarov <ajlduarte@sapo.pt>
2016-12-04 17:18:56 +00:00
UbitUmarov 6a8b8f3168 change a wrong error message and avoid a null ref (that may happen due to needed time delays) 2016-12-02 22:56:14 +00:00
UbitUmarov f4745e5a35 full change ServiceThrottleModule. Let it still service RegionHandleRequest and UUIDNameRequest but this wrong since they are diferent services. Keeping gambling about not having 2 much overlaps of the 2 kind of requests. Remove double thottling of RegionHandleRequest 2016-11-22 22:24:54 +00:00
AliciaRaven 34d9596f9b Fix typo in a comment 2016-11-22 15:33:34 +00:00
AliciaRaven 94e48838d5 Include new Region.ini option for DefaultLandingPoint for teleports with no coords specified.
This is useful when using a Telehub would be to restrictive as it would block landmarks and map teleports. This location is only ever used when no coordinates are provided. If config value not set, the previous default of 128,128 is used.
2016-11-22 15:31:45 +00:00
UbitUmarov b70e48c8a5 handle HG lm tp to large regions in another way 2016-11-20 22:09:33 +00:00
UbitUmarov 200183caf7 HG protocol is still broken for large regions. work around it on teleport via lm 2016-11-20 02:49:40 +00:00
UbitUmarov 1b7327800a fix GetUserUUI 2016-09-19 15:41:14 +01:00
UbitUmarov 386a13d5d6 mantis: rotate avatar to lookAt o login/teleports. Some cases may still be wrong 2016-08-28 14:59:02 +01:00
UbitUmarov fdea8fc96b potencial null ref 2016-08-24 02:00:50 +01:00
UbitUmarov fedc689170 in GetUsersNames(string[] ids) why are empty names in cache? ignore them, cache also information found by GridUserService 2016-08-18 04:16:20 +01:00
UbitUmarov 7dbc5803a6 in GetUsersNames(string[] ids) dont loose names HGFriends may have cached 2016-08-18 02:49:46 +01:00
UbitUmarov 04ea34f379 add GetUsersNames(string[] ids) to UserManagement. Make GetDisplayNames cap use it so several IDs are handle on a single call. Since there is no grid side suport, no much gain still 2016-08-17 06:00:42 +01:00
UbitUmarov 23578635df more changes relative to incorrect use of activegroupid 2016-08-05 15:19:42 +01:00
UbitUmarov 708d2cd413 replace DateTime.Now by utcNow in another place 2016-08-01 00:58:16 +01:00
UbitUmarov 8d5bc71a53 bug fix: use UtcNow in both places :) 2016-08-01 00:35:48 +01:00
UbitUmarov 159d722966 on 0.8 grids compatibility code just do a BIG range request. It whould be done in most cases (open borders) plus 4 more. In future this code should not be used if the grid is >=0.9 2016-07-31 23:12:09 +01:00
UbitUmarov c0eae1f8f9 simply NotFoundLocationCache, comment out some debug messages 2016-07-31 22:39:01 +01:00
UbitUmarov a4caedceae rename a few things to reduce confusion between regions wold location and grid location (a lot more elsewhere) 2016-07-31 01:56:44 +01:00
UbitUmarov 19df2a2916 remove more code related to Mega regions 2016-07-28 01:00:56 +01:00
UbitUmarov ec8101a24a remove references to RegionCombinerModule 2016-07-28 00:34:16 +01:00
UbitUmarov 2e4c8798ab a few more changes on avatar crossing 2016-07-27 03:50:47 +01:00
UbitUmarov f4fa891928 waste another thread job on another thing that should be part of a more
unified service, and also not hidding on a so called event"
2016-07-27 02:54:49 +01:00
UbitUmarov 52decfcc16 reduce some grid services calls on region crossings, sending more information on the agent update ( groups v2 needs change ) 2016-07-26 21:39:47 +01:00
UbitUmarov 504ee6e21c don't try to rez a object from a asset with empty data and Let user know about it 2016-07-22 16:41:41 +01:00
Melanie Thielker ea8f3c83bf Finally remove the requirement for an InventoryItem/FolderBase object to
be passed into inventory queries.
This makes the API more homogenous and also will more clearly show
coding
errors related to HG inventory where the .Owner field has a meaning
for a query but wasn't always set.
2016-07-04 03:35:48 +01:00
Diva Canto cc9ff12988 Set culture also in object crossings. 2016-06-22 20:18:16 -07:00
Diva Canto 33efc91342 Mantis #7802: set culture to US English on the thread that does the agent crossing, not that it's async and needs to parse decimal numbers. 2016-06-22 18:10:12 -07:00
Diva Canto f8bd3d2f2e Mantis #7935: regression on transferring attachments over the HG 2016-06-22 11:52:53 -07:00
Melanie Thielker d2f61f5320 Also make the HGUserManagementModule more amenable to subclassing. 2016-06-16 01:47:52 +02:00
Melanie Thielker f800f5ba57 Make the UserManagementModule inheritable 2016-06-15 16:51:02 +02:00
Diva Canto 7d6adeedf5 Fixed a merge issue 2016-06-06 08:41:08 -07:00
Diva Canto c4c3163db9 Don't copy assets to foreign asset servers when the objects are being deleted
Conflicts:
	OpenSim/Region/CoreModules/Framework/InventoryAccess/HGInventoryAccessModule.cs
2016-06-06 08:37:15 -07:00
Diva Canto 057d1b2a6e Minor improvement over the previous commit -- make sure the code exists in the FolderType enum 2016-05-16 21:57:19 -07:00
Diva Canto 9e21647011 Mantis #7878 -- Landmarks were not being created in HGSuitcaseInventory 2016-05-16 19:36:20 -07:00
Melanie Thielker 59ed89769a Apply user specified default perms across the board, to items uploaded as well as items created and to rezzed prims in world.
This effectively removes the concept of "default permissions" from OpenSim
because all known modern viewers set the permissions flags on login.
Ancient abandoned viewers will now default to the SL defaults.
2016-04-29 22:36:56 +02:00
Melanie Thielker d42de53dda Allow default permissions from the viewer to be applied to uploaded objects.
Make inventory items reflect coorect permissions immediately unstead of after relog
2016-04-29 21:23:32 +02:00
UbitUmarov 109723dc2d add option MaxRegionsViewDistance to control the maximum range to tell viewer to connect to Neighbour regions, since that is diferent from view range 2016-01-26 20:39:37 +00:00
UbitUmarov d5e21a0ad2 remove failed CreateAgent from agent child regions list 2015-12-02 04:40:06 +00:00
UbitUmarov f1bbc4d386 stop some requests processing when module as no scenes (there must be a better way to fix this) 2015-11-27 14:39:11 +00:00
UbitUmarov 172bb05ec2 suspend the use of DisableSimulator, that is causing teleport and crossing issues 2015-11-25 04:13:13 +00:00
UbitUmarov f45905851a at end of teleport disable the sending simulator, not destiny 2015-11-24 14:01:51 +00:00
UbitUmarov c84334fc72 add a missing override 2015-11-21 19:53:14 +00:00
UbitUmarov 4a0531244a change a log message from error to just Debug 2015-11-20 00:45:12 +00:00
UbitUmarov 36f7e96392 clean code a bit 2015-11-19 15:02:12 +00:00
UbitUmarov 2e43343ca9 ClearPartAttachmentData before adding object to scene, not after 2015-11-19 14:45:39 +00:00
UbitUmarov d1737de8d2 work around some 'tests' errors: Coalesced objects handling has changed 2015-11-17 03:10:59 +00:00
Melanie Thielker 69585a4824 More plumbing of the EntityTransferContext (not yet complete) 2015-11-01 19:11:14 +01:00
UbitUmarov 24472c3b67 fix merge issues 2015-11-01 03:25:36 +00:00
UbitUmarov 72684592ba Merge branch 'master' into avinationmerge
Conflicts:
	OpenSim/Framework/AvatarAppearance.cs
	OpenSim/Framework/Servers/ServerBase.cs
	OpenSim/Framework/VersionInfo.cs
	OpenSim/Region/CoreModules/Agent/AssetTransaction/AssetXferUploader.cs
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs
	OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/RemoteSimulationConnector.cs
	OpenSim/Region/Framework/Interfaces/IEntityTransferModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/PhysicsModules/ConvexDecompositionDotNet/Properties/AssemblyInfo.cs
	OpenSim/Region/PhysicsModules/Ode/ODEPrim.cs
	OpenSim/Region/PhysicsModules/Ode/OdeScene.cs
	OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
	OpenSim/Services/HypergridService/GatekeeperService.cs
	OpenSim/Services/Interfaces/IAvatarService.cs
	OpenSim/Services/LLLoginService/LLLoginService.cs
2015-11-01 03:01:59 +00:00
Melanie Thielker ea56f4f27c Introduce an EntityTransferContext carrying the version numbers to pass
to all interested functions. Should fix the varregion conditional.
Still a testing version, do NOT use in production!
2015-10-31 18:13:02 +01:00
UbitUmarov ed909f56da fix mantis 7734, Thanks Garmin for the report 2015-10-31 13:22:50 +00:00
Melanie Thielker dc6d9eadf3 Testing stage of the new versioning system. Use at own risk. May not
work. Will eat your babies. Yada. Yada.
2015-10-31 00:01:35 +01:00
Diva Canto 7ab633461e Fixed merge conflicts
Clean up of simulation version, the number that rules the compatibility of teleports:
- It's not configurable anymore, it's fixed in code. Each number means an increase in features of the teleport procedure
- Its definition moved to the global VersionInfo class
As of now it's still 0.3.

Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
2015-10-18 16:24:33 -07:00
Diva Canto 70a46fe090 Clean up of simulation version, the number that rules the compatibility of teleports:
- It's not configurable anymore, it's fixed in code. Each number means an increase in features of the teleport procedure
- Its definition moved to the global VersionInfo class
As of now it's still 0.3.
2015-10-18 16:06:31 -07:00
UbitUmarov 31873485d9 do not send DisableSimulator on teleport if agent is already returning 2015-10-02 02:42:25 +01:00
UbitUmarov 6ae7341e42 send DisableSimulator messages on closing childagents. Possible still not on at best timming, or on the right source files 2015-10-01 20:50:12 +01:00
UbitUmarov 07a8618c56 revert previus wrong commit 2015-09-25 21:43:51 +01:00
UbitUmarov 40ae9ec554 patch objects crossings for var regions, until region location is fully fixed 2015-09-25 18:38:52 +01:00
UbitUmarov 812e808cee remove messages on agents cross fails that got merged 2015-09-17 08:18:35 +01:00
UbitUmarov 9ac01010f4 change point of evocation of AgentHasMovedAway for HG 2015-09-16 04:32:09 +01:00
UbitUmarov 2bd7bbd1cb restore some avn code, fixing for var regions 2015-09-16 02:25:12 +01:00
UbitUmarov 5becc16acf try to improve vehicles crossing with Xengine. Lag seems main issue now, but needs testing, specially the fail cases, that most likelly need more work 2015-09-14 16:40:01 +01:00
UbitUmarov dfc142a50f try to be more friendly to HG 2015-09-12 14:37:07 +01:00
Robert Adams e5367d822b Merge of ubitworkvarnew with opensim/master as of 20150905.
This integrates the OpenSim refactoring to make physics, etc into modules.
AVN physics hasn't been moved to new location.
Does not compile yet.

Merge branch 'osmaster' into mbworknew1
2015-09-08 04:54:16 -07:00
UbitUmarov c1a4786be0 still a missing stat ID 2015-09-06 01:01:31 +01:00
UbitUmarov 0ddcc55166 let extra stats travel side by side with viewers ones... try to fix damm array indexes all over the place 2015-09-06 00:32:20 +01:00
UbitUmarov 2130984bef a few changes to stats. Array order coerent on users. give up on moses stats for now, since SimExtraStatsCollector cant reach SimStatsReport etc 2015-09-04 23:07:25 +01:00
Diva Canto d00f73c3a4 Deleted OpenSim.Framework.Communications. Moved its two remaining files to OpenSim.Framework. 2015-09-04 14:39:23 -07:00
UbitUmarov a11edceb00 seems to compile ( tests comented out) 2015-09-02 19:54:53 +01:00
UbitUmarov 371c9dd2af bad merge? 2015-09-01 14:54:35 +01:00
Diva Canto 11194209df First commit where physics work as region module.
Moved all physics dlls out of Physics and into bin directly, so they can be found by the module loader.
Removed call to PhysicsPluginManager.
2015-08-31 14:09:15 -07:00
Diva Canto 134d4300f0 All physics plugins are now region modules. Compiles but doesn't run. 2015-08-31 13:02:51 -07:00
Diva Canto ce2c67876e More namespace and dll name changes. Still no functional changes. 2015-08-30 21:05:36 -07:00
Diva Canto 2c0cad6dd3 Renamed the namespaces too 2015-08-30 20:29:31 -07:00
UbitUmarov 0edffae7e4 more on tps and crossings 2015-08-30 19:17:35 +01:00
UbitUmarov bd11311845 improve object crossings 2015-08-29 09:18:34 +01:00
UbitUmarov b114a04ed4 fix NeighborRegions code 2015-08-29 03:41:43 +01:00
UbitUmarov ce883e9b43 add more of the v03 checks and homeURL. Sending side only for now 2015-08-26 05:29:08 +01:00
UbitUmarov 73124f22cc change teleport version number to v0.3, without actually adding the checks
for 0.7 sims, etc that we don't have. Also still not using the homeURL
added in core.
2015-08-26 03:21:48 +01:00
Melanie Thielker 028506cf3c Partial plumbing for the agent stateful module features negotiation 2015-08-20 00:18:45 +02:00
Diva Canto 959872315f WARNING: massive refactor to follow libomv's latest changes regarding inventory folders. The newest version of libomv itself is committed here. Basically, everything that was using the AssetType enum has been combed through; many of those uses were changed to the new FolderType enum.
This means that from now on, [new] root folders have code 8 (FolderType.Root), as the viewers expect, as opposed to 9, which was what we had been doing. Normal folders are as they were, -1. Also now sending folder code 100 for Suitcase folders to viewers, with no filter.
All tests pass, but fingers crossed!
2015-08-08 12:12:50 -07:00
Oren Hurvitz 3a2d4c8b05 Added logging in places where regions are searched for by their location
This commit also fixes the log message "Region already exists in coordinates <{0},{1}>": it was actually showing the *requested* coordinates, instead of the coordinates of the previously-existing link.
2015-07-22 20:13:53 +03:00
BlueWall 3c2886cd75 Adding back command to clear region's user cache 2015-05-13 14:31:28 -05:00
Diva Canto 0bf1209f90 Another major overhaul of inventory downloading, this time pertaining to inventory links. Added yet another function to IInventoryService to get multiple items at once, so that fetching collections of linked items is done once per folder instead of once per item. 2015-05-08 20:53:28 -07:00
Diva Canto c74cef0f42 Major change in the way inventory is downloaded: added a method throughout IIventoryService that fetches sets of folders at once. Also added folder id in the InventoryCollection data structure, so that we don't need to go to inventory server again just for that. This reduces the chatter between sims and inventory server by... a lot. On my tests, this reduces initial inventory download down to 30% of what it currently is. 2015-05-07 19:24:08 -07:00
Diva Canto 1abbad71b4 Refactored some code that is used in two different dlls related to SOP rewriting. Also added some unit tests that relate to mantis #7514 2015-05-05 20:59:09 -07:00
Diva Canto 877371411a Mantis #7514
I think this is it -- a bug introduced back in October, where the prefix and name space were being added twice on HG asset posts bu simulators.
2015-05-02 22:18:58 -07:00
Robert Adams 07dead7dcb varregion: any conversions of use of Constants.RegionSize converted into
Util.cs routines to convert region coords to and from world coords or handles.
2015-03-29 14:25:12 -07:00
Robert Adams d74d74c910 varregion: restore checkAgentAccessToRegion routine in EntityTransferModule. 2015-03-27 06:47:55 -07:00
Robert Adams 9f18e3ba80 Varregion: first cut at removing Border class checks for region crossings.
Added Scene.PositionIsInCurrentRegion(pos) to sense when new position needs some crossing work.
Many changes made to EntityTransferModule to accomodate new crossing sense logic.
2015-03-22 21:53:02 -07:00
Justin Clark-Casey (justincc) 0aeea89258 Fix script state not being preserved in objects sent via Hypergrid.
This was because attributes were not being included in the transformation, hence losing the script state identity.
Symptoms are messages like "[SCENE OBJECT GROUP]: SavedScriptState element had no UUID in object test box"
Regression since the conference code merge.  Regression test extended for this case.
Relates to http://opensimulator.org/mantis/view.php?id=7439
2015-03-13 20:09:29 +00:00
Freaky Tech 5a413c1b2f adjusted new UserManagementModule to accept the HG UUI test harness
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2015-03-05 17:19:39 -05:00
Freaky Tech 0ea6977013 solving HG IM, HGFriends issues based on falsified GridUser data
it does not consider GridUser as a viable source for residents' data.
it does not consider Friends, Inventory Creators to be trusted at all. There are lots of broken entries in existence.

There are lots of broken creator data fields in assets.

The following issues arise from the broken data in the old User Management Module:

failing HG IM
failing HGFriends Requests

Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2015-03-05 16:17:12 -05:00
Justin Clark-Casey (justincc) 5fa651c529 minor: In HGAssetMapper, don't complain on seeing an XmlDeclaration as we know that we not using those in transformation.
Relates to http://opensimulator.org/mantis/view.php?id=7447
2015-02-25 21:42:07 +00:00
Justin Clark-Casey (justincc) c67b3407d4 In HGAssetMapper.RewriteSOP(), don't explicitly end the document.
The document here has no <?xml declaration.  Though ideally it may be present, in practice it has not been added as the data here is embedded within an asset
On Mono 3.2.8 and probably other versions, calling WriteEndDocument() without a declaration does nothing.
On Windows .NET, the same operation throws a "Document does not have a root element" exception which may be contributing to Mantis 7397 and possibly 7439
2015-02-21 00:08:49 +00:00
Justin Clark-Casey (justincc) c90c22ed28 If HGAssetMapper.PostAsset fails then be more explicit about the uuid, type, size and base asset uuid of the failure for debugging purposes. 2015-02-19 23:50:25 +00:00
Justin Clark-Casey (justincc) 264047dba0 Add the type of the unrecognized node to the HG asset mapping error message in TransformXml() 2015-02-19 22:39:22 +00:00
Justin Clark-Casey (justincc) 1d2616e7a2 If the owner of an object is taking a copy from the scene (e.g. via the "take copy" option on a viewer) then only require owner copy perms, not copy and transfer.
This matches Linden Lab behaviour and what was already possible via shift-copy.
Transfer would not apply here as the owner and copier are the same.
This is the only functional change, all other current take copy logic remains the same.
Adds regression tests around relevant take copy cases.
2015-02-03 23:43:30 +00:00
Justin Clark-Casey (justincc) d0a2ea0857 Fix regression where the stored state of every second script in an object rezzed from inventory (e.g. attachments) was no longer loaded.
Likely a regression since f132f642 (2014-08-28)
Relates to http://opensimulator.org/mantis/view.php?id=7278
2015-01-23 00:27:57 +00:00
Justin Clark-Casey (justincc) b22c072c40 Fix a recent regression with HG asset posting to other grids where the assets were no longer being posted.
Addresses regression from 08606ae (Thu Jan 8 2015)
2015-01-15 23:44:34 +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) 8e1e8a0920 Make the performance controlling job processing threads introduced in conference code use a generic JobEngine class rather than 4 slightly different copy/pasted versions. 2015-01-12 20:56:37 +00:00
Justin Clark-Casey (justincc) 08606ae409 Make the IteratingUuidGatherer the only UuidGatherer.
This UUID gatherer provides a superset of the previous gatherer's functionality
as it also allows the caller to control gathering iterations for load purposes.
2015-01-08 20:21:40 +00:00
BlueWall e50aac020f Add command to reset region's user cache 2014-12-16 12:47:02 -05:00
Justin Clark-Casey (justincc) f3ab7c0f5c refactor: rename IteratingUuidGather.AddAssetUuidToInspect() and RecordAssetUuids() to AddForInspection() as this properly describes what both of these methods do. 2014-12-05 00:21:42 +00:00
Justin Clark-Casey (justincc) 9208fb5d54 refactor: Make IteratingUUIDGatherer take a dictionary in its constructor like UUIDGatherer, so we can deal with future cases where the dictionary may already be pre-populated. 2014-12-04 23:55:59 +00:00
Justin Clark-Casey (justincc) 39eab72d7c When performing region cross, don't add the velocity to the new position in ETM.CrossAgentIntoNewRegionMain() since this has already been performed by SP.CheckForBorderCrossing() 2014-11-29 00:16:23 +00:00
Justin Clark-Casey (justincc) 09534f378e Avoid repeated lag-generating continuous attempts to retrieve HG service Urls in UMM if the initial request fails, possibly due to the home URL not being present
Instead, the failure information is effectively added to the memory cache (so no persistence over simualtor sessions).
A future improvement may be to invalidate negative cache results after some time has passed in case the failure was transient.
Looks to resolve http://opensimulator.org/mantis/view.php?id=7382
2014-11-28 01:16:30 +00:00
Justin Clark-Casey (justincc) ee9fae23ff Be more explicit again in UMM bad HomeURL message by logging the original creator data 2014-11-27 00:32:04 +00:00
Justin Clark-Casey (justincc) 8a27fc5d61 Make UMM.AddUser(UUID, string) log message when bad creatorData is given to reflect its location (UMM not Scene) and add the user name and ID. 2014-11-27 00:24:17 +00:00
Justin Clark-Casey (justincc) 86367d7219 refactor: Move methods to start a monitored thread, start work in its own thread and run work in the jobengine from Watchdog to a WorkManager class.
This is to achieve a clean separation of concerns - the watchdog is an inappropriate place for work management.
Also adds a WorkManager.RunInThreadPool() class which feeds through to Util.FireAndForget.
Also switches around the name and obj arguments to the new RunInThread() and RunJob() methods so that the callback obj comes after the callback as seen in the SDK and elsewhere
2014-11-25 23:56:32 +00:00
Justin Clark-Casey (justincc) 66b1c37973 Fix bug in HG attachment throttling code where attachments were never rezzed on any teleport within a foreign grid after the first.
Bug was introduced in ghosts branch commit 69abade
2014-11-25 23:23:12 +00:00
Justin Clark-Casey (justincc) aeae34505f When processing incoming attachments via HG, if a request for uuid gathering or final asset import takes too long remove remaining requests from same user to prevent hold up of other user's incoming attachments.
This improves upon the earlier naive simply queueing immplementation.
Threshold is 30 seconds.  If this happens to a user they can relog and fetch will be reattempted.
2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc) 06a5d6e9ef Introduce an IteratingUuidGatherer where each fetch from the asset service (iteration) can be controlled by the caller.
This is to enable an imminent change where incoming HG scene object fetching can assess the time taken by each request rather than being forced to perform all requests in one call.
Soon, this will replace the existing UuidGatherer since it is both simpler and more flexible.
2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc) d6c9705a3b Add incoming packet async handling engine to queue some inbound udp async requests.
This is to reduce the potential for overload of the threadpool if there are many simultaneous requets in high concurrency situations.
Currently only applied to AvatarProperties and GenericMessage requests.
2014-11-25 23:23:11 +00:00
Justin Clark-Casey (justincc) 1c5c6af274 Add missing class from recent commit 69abade 2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc) f54c70741b Add "show threadpool calls active" console debug command.
This shows named threadpool calls (excluding timer and network calls) that are currently queued or running.
Also shows total of labelled and any anonymous calls.
2014-11-25 23:23:10 +00:00
Justin Clark-Casey (justincc) 1d19e1bbd0 Add naive implementation of controlled incoming HG attachments to manage load.
Instead of processing all incoming attachment scene object concurrently, process them consecutively to eliminate potential overload from this source.
This is a naive implementation because it does not currently account for slow foreign asset services.
Although it may take longer, this approach may also improve attachment visibility for HG avatars
since the scene object is now always added to the scene after receiving assets from the foreign service and not before.
2014-11-25 23:23:10 +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) 1eb3e6cc43 When inserting missing CreatorData in the HGAssetMapper, do the rewrite on a streaming xml basis rather than loading it all into memory via XmlDocument.
This is because objects with lots of parts can have a lot of xml to load into memory, and this has been seen to have a noticeable performance impact.
Whereas streaming has been seen to reduce the impact in normal serialization.
Implmentation is messy but I couldn't see a better way of doing it when you can't assume that you know the exact structure of the input XML.
2014-11-25 23:21:38 +00:00
Justin Clark-Casey (justincc) f7ab3e20bc Add regression test TestPostAssetRewrite() to check results of HGAssetMapper.Post() object asset rewriting, 2014-11-25 23:21:38 +00:00
Justin Clark-Casey (justincc) dacd0ecfee minor: Remove unused field from EntityTransferModule 2014-11-25 23:21:37 +00:00
Justin Clark-Casey (justincc) fc878a33ed refactor: consistently put all test classes in the OpenSim.Tests.Common package rather than some in OpenSim.Tests.Common.Mock
the separate mock package was not useful and was just another using line to always add
2014-11-25 23:21:37 +00:00
UbitUmarov c5dcc0d8c1 try to preserve permitions on object returns 2014-11-08 02:02:45 +00:00
UbitUmarov ead78764ab allow drawdistance to change between 32 and MaxDrawDistance, configurable
value default to 256, so should have no effect. Next steps needed: reduce
 client udp Throttles with distance, update childreen connections with
 significat movement and view range changes, Make disconnect be delayed in time, make disconnects be receiving region action not sender on region changes. Allow distance less than 256 to only connect to visible regions, even none. Make this be relative to camera and not agent position or region centers as it is now.
2014-11-06 19:03:25 +00:00
UbitUmarov b5e43a4b90 BUG fix : fix a very silly bug uint in place of ulong :( 2014-11-03 21:04:21 +00:00
UbitUmarov f6ae8534be only close child agents on sucess of V1 tp not at start 2014-11-01 15:38:14 +00:00
UbitUmarov 21242205d1 add more temporary fixes for regionSize zero 2014-10-24 18:44:08 +01:00
UbitUmarov d2b049b7ad check new region size on added code for varsize till its fully suported 2014-10-24 18:32:24 +01:00
UbitUmarov 4571e5bc3e try to make SOG crossings full async. Simplify some borders checking.... 2014-10-24 18:10:28 +01:00
UbitUmarov 59413adcee do agent crossing async, including QUERYACCESS ( need to check vehicles for
this also ), so it doesn't stop heartbeat
2014-10-21 11:57:47 +01:00
UbitUmarov afa9b4a002 Assume childreen don't need to know caps seeds 2014-10-20 09:14:27 +01:00