Commit Graph

82 Commits

Author SHA1 Message Date
Melanie Thielker
b16abc8166 Massive tab and trailing space cleanup 2017-01-05 19:07:37 +00:00
Melanie Thielker
f03a6bbc61 Create a generic way for passing constructor args to plugins
The old syntax didn't allow for any parameters except for services
listed in the ServiceList. Now, services loaded by other services can
also be made to use different ini sections or have additional paramters.
Syntax is: [<ExtraParam>@]...<DllName>[:<ClassName>]
2017-01-02 17:47:20 +00:00
Melanie Thielker
e0b5135010 Add a MaxRetries option to the inventory connector.
If clustered services are used, another try would go to another server
and may succeed.
2016-12-29 16:29:44 +00: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
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
UbitUmarov
410ae96d04 put back diva's cache with her recent fix but also avoid duplicated InventoryService.UpdateItem call in case of m_uploadState is complete. In that case CompleteItemUpload will do it 2015-09-11 22:26:05 +01:00
UbitUmarov
af0febf6a7 inventory mess 2015-09-11 19:55:38 +01:00
Diva Canto
29aaf5564f Mantis #7720: AssetXferUploader was setting AssetID to UUID.Zero. Before that wouldn't matter (item would be a terminal object) but with the introduction of the item cache, it matters, because the object in the cache was being modified to have AssetID=UUID.Zero. Also keeping the item cache consistent when item properties change. 2015-09-11 09:48:51 -07:00
UbitUmarov
6a0465b70a remove diva's inventory cache since it seems to cause mantis 7720, broken items UUID. Guess it doesn't cover all paths 2015-09-11 04:46:15 +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
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
Diva Canto
96f0c6f074 More on mantis #7567. Two things:
- Increase the inventory cache timeout to 20 secs, so that the items will still be there when they are needed by the sim for rezzing
- Before rezzing attachs, make a call to GetMultipleItems so to fetch them all at the same time
2015-06-05 10:07:50 -07:00
Diva Canto
51fccff235 Mantis #7600. The warning message was not a symptom of a problem, it was just that the HG client was trying to fetch folders that aren't in the Suitcase, so that fails. This should make the warning message go away in that situation. (fetching those folders will still fail, because they aren't available over HG) 2015-06-04 15:04:36 -07:00
Diva Canto
a433a40980 Making the inventory cache static, so that there's less timers. 2015-06-04 07:10:06 -07:00
Diva Canto
ea5aa82c2c Mantis #7567. Once again, avoiding prefetching linked items within linked folders. Also fixing the inventory connector GetMultipleItems, so that if everything is in the cache, it returns successfully rather than unsuccessfully. 2015-06-04 06:58:07 -07:00
Diva Canto
bac53387a9 Mantis #7567: added an 8-sec expiring item cache to the inventory network connector. This fixed the problem on my local test grid and generally made things faster. This cache has been needed for a while... there are many parts in the code where the sim gets an item multiple times in a short amount of time (rezzing attachs and objects, for example).
Other minor changes:
- added the scene as a parameter to the constructor od FetchInvDescHandler, so that I could see in which scene the handler was being called
- brought linked items in linked folders back to being prefetched
2015-06-03 17:42:41 -07:00
Diva Canto
3df472f10d Added inventory tests to Robust.Tests. 2015-05-11 08:52:12 -07: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
3548e39f9a I shouldn't write code this early in the morning... Fixing a 'duh' on previous commit. 2015-05-08 07:36:30 -07:00
Diva Canto
a68aab14fa Additional debug message to help diagnose a warning message and exception related to previous commit.
See http://opensimulator.org/mantis/view.php?id=7054#c28282
2015-05-08 06:57:06 -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
Justin Clark-Casey (justincc)
8738445eb7 Move the inventory request lock introduced in git master a58152bd to HGInventoryBroker to preserve that behaviour there but allow 2 simultaneous inv requests (chiefly WebFetch) rather than 1
This lock serialized all requests and made the inventory throttling in WebFetch redundant.
By moving this lock, two simultaneous requests may now take place which may help with http://opensimulator.org/mantis/view.php?id=7054
2014-08-09 00:52:51 +01:00
Justin Clark-Casey (justincc)
327632dc66 Add inventory.<url>.RequestsMade stat.
This gives a count of all requests made to the remote inventory service.
This is finer grained than inventory.httpfetch.ProcessedFetchInventoryRequests since such a request can be comprised of many individual inv service calls.
In addition, this will count requests that don't go through the HTTP inventory fetch (e.g. HG, archiving, etc.)
2014-07-26 02:17:04 +01:00
Justin Clark-Casey (justincc)
c0c92a95bf Add undocumented RemoteRequestTimeout seconds parameter to xinventory requests
This is for testing purposes (chiefly http://opensimulator.org/mantis/view.php?id=7054) so many not be permanent
Setting this will change the xinventory request timeout from the simulator from the default 100 seconds
2014-07-25 23:06:23 +01:00
Diva Canto
20f20895cf Adds optional HTTP Basic Authentication to Robust service connectors. 2014-05-23 16:19:43 -07:00
Oren Hurvitz
88f7a833dc Improved HTTP logging 2014-04-29 07:59:17 +01:00
Oren Hurvitz
018832522c Removed GetUserInventory(). It wasn't being used, and was creating warnings because it's Obsolete. 2014-04-23 14:38:33 +01:00
Justin Clark-Casey (justincc)
7759b05dcb Make XInventoryServicesConnector properly handle a RESULT = false return for methods where this contains failure rather than throwing an exception.
Result = False is generated for methods such as GetFolderForType() when the other end wants to signal a failure of the operation in methods such as GetFolderForType()
2013-06-13 00:31:32 +01:00
Justin Clark-Casey (justincc)
04d8c6b4fe Change exception log messages in XInventoryService connector to error rather than debug, since these signal real problems.
Also outputs full exception instead of just the message to aid diagnostics.
2012-08-01 00:11:21 +01:00
Justin Clark-Casey (justincc)
b899d64dc1 If we're fetching active gestures via the XInventoryServiceConnector, then properly look at the ITEMS dictionary already returned rather than the level above this. 2012-07-30 23:14:20 +01:00
Justin Clark-Casey (justincc)
d8a78374aa Where necessary, rename OpenSim/Services/Connectors/*.cs files to reflect the actual class names.
This is usually because the file name was singular (*Service*) but the class name was plural (*Services*).
This is to make configuration easier rather than having to look in the c# code itself to find the slightly different name of the connector.
This does not affect existing configuration since the files are being renamed rather than the classes.
2012-05-09 23:25:01 +01:00
Diva Canto
6eaff18961 Finish the implementation of GetUserInventory, even though it's still not used. 2012-04-06 11:38:47 -07:00
Diva Canto
a58152bd2a More on inventory transfer hold ups:
- Added an inventory cache for caching root and system folders
- Synchronized the remote inventory connector, so that all the remote inventory calls are serialized
This will not make much difference in the hold ups. We'd have to move the FireAndForget high up to AddInventoryItem, but that opens up a can of worms regarding the notification of the recipient... the recipient would be notified of the offer before the items are effectively in his inventory, which could lead to surprises.
2012-03-09 12:59:24 -08:00
Diva Canto
3a38bd8854 Addresses mantis #5449 -- crashing exception in SendInventoryFolderDetails. 2011-04-25 08:53:48 -07:00
Diva Canto
7592a033df Moved 3 request handlers from OpenSim.Framework.Servers.HttpServer up to OpenSim.Framework -- just pasted them in WebUtil. This is so that code that uses the Service connectors don't need to include the HttpServer dll -- that was odd. 2011-04-12 20:24:28 -07:00
Diva Canto
632babf8fb Added an additional debug message, and removed a bunch of files that weren't being used anymore -- the old RemotsInventory connectors stuff. 2011-02-04 19:19:38 -08:00
Melanie
7796b90ebb Fix some crashes caused by the addition of the CreatorData column 2010-11-23 14:02:06 +00:00
Diva Canto
c617d658dd Added creator info across the board -- TaskInventoryItems and InventoryItems themselves. Tested. Seems to be working, main tests pass. Nothing done for IARs or HG transfers yet -- this only works for OARs for the time being.
New migration in inventory table in order to make CreatorID varchar(255).
2010-11-21 17:19:24 -08:00
Jeff Ames
f1f0bc23f4 Formatting cleanup. 2010-09-12 13:43:49 -04:00
Diva Canto
5fda81e6bb * XInventory fairly tested, including for HG. Almost ready to switch.
* Removed a few buglets and added better exception handling.
2010-04-30 11:39:02 -07:00
Diva Canto
3f9d38538e XInventory connector/handler showing signs of life. Tested, but needs more testing. 2010-04-27 11:01:56 -07:00
Diva Canto
76e87181b2 RemoteXInventoryServiceConnector, the plugin region module. Not active in default configs yet. 2010-04-26 20:28:37 -07:00
Jeff Ames
f58a0394ed Formatting cleanup. Add copyright notices. 2010-03-10 13:15:36 +09:00
John Hurliman
01218093a6 * Typo fixes
* Performance improvement in the expensive GenerateClientFlags()
2010-03-09 12:06:53 -08:00
Diva Canto
16f77fa1f1 Finished implementing the XInventory connector. Untested. 2010-02-07 16:41:41 -08:00
Melanie
bc68390b14 The first 2 handlers for the XInventory system. 2010-01-08 22:51:37 +00:00
Melanie
6d061d9f39 Complete the XInventoryConnector. Flesh out the skeleton for the
XInventoryInConnector
2010-01-06 22:00:19 +00:00
Melanie
aca01f5415 Add the XInventoryServicesConnector, a new inventory connector without the cruft
of the old one that makes inventory crash on folder creation. This is just
the connector part, the handler is still ont he todo list.
2010-01-05 04:22:03 +00:00
Melanie
4799f1ce92 Add the unfinished XInventoryConnector. Intermediate commit, will NOT compile! 2010-01-05 03:13:19 +00:00
Justin Clark-Casey (justincc)
e31e141629 minor: Correct some inventory corrector log messages and add more identifying detail 2009-11-18 18:57:15 +00:00