| Commit message (Collapse) | Author | Files | Lines |
|
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
|
|
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).
|
|
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
|
|
the fix was good) Thanks FreakyTech.
|
|
because it's Obsolete.
|
|
(which has a 1-minute timeout)
Resolves http://opensimulator.org/mantis/view.php?id=6945
|
|
Thanks to Kira for this patch from http://opensimulator.org/mantis/view.php?id=6845
|
|
messy inventories and esp. related to kokua
|
|
|
|
|
|
|
|
|
|
isn't needed since it's thread safe but r/w of contained dictionaries isn't thread-safe
|
|
|
|
|
|
This better reflects the long-term purpose of that project and matches Monitoring modules.
|
|
|
|
|
|
- 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.
|
|
region Scenes and Modules. Changed existing modules to use it instead of assuming that foreign = null account.
|
|
|
|
|
|
avoid a possible race condition
|
|
started by GetFolderContent(), to protect ourselves against callers modifying lists
Hopefully this addresses http://opensimulator.org/mantis/view.php?id=5681
|
|
the embedded local inventory connector to prevent an NRE when that connector tries to lookup the UserManager through the scene.
This is to address http://opensimulator.org/mantis/view.php?id=5669
However, if this failure was happening I'm kind of surprised that local HG inventory was working at all.....
We probably weren't seeing these exceptions previously because we weren't logging them when the reached the top of a FireAndForget thread.
|
|
RemoveXInventoryServiceConnector
This is for http://opensimulator.org/mantis/view.php?id=5669
If we can't retrieve an IUserManagement module we complain, and we also warn in the log when its manually set in XISC by HGInventoryBroker
|
|
RemoteXInventoryServiceConnector for a visiting HG user.
Not doing this causes NREs whenever that user tries to access inventory when Hypergrid is turned on since the Remote connector does not have a scene (which is only used to fetch the UserManager)
Aims to address http://opensimulator.org/mantis/view.php?id=5669
|
|
|
|
HGInventoryBroker.CacheInventoryServiceURL when it tries to cache it for an NPC
This concept is meaningless for NPCs. However, it might be better to make NPCism an actual property on ScenePresence and check.
Addresses http://opensimulator.org/mantis/view.php?id=5643
|
|
item id isn't found.
making this query is legitimate and so the log line can cause false positivies. It is up to callers to log an error if appropriate.
|
|
|
|
window, but can't test because this mechanism doesn't seem to work without a profile service.
|
|
RemoteXInventoryServiceConnector on GetFolderContent.
|
|
being used anymore -- the old RemotsInventory connectors stuff.
|
|
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).
|
|
|
|
|
|
instantiate the right network connectors. Tested on Robust only.
|
|
folder up from connectors into Scene.Inventory.cs
This fixes the problem for all architectures (hg as well as local and grid) and means we don't have to dupe code between connectors.
Not ideal in that it becomes non-modular, but methods in Scene.Inventory.cs should eventually be modularized anyway.
|
|
The agentID in AddInventoryItem(UUID agentID, InventoryItemBase item) is redundant since it's contained in item.Owner, and it doesn't make sense for agentID != item.Owner, hence the method is deprecated.
|
|
|
|
goes to the correct directory
Also removes some mono compiler warnings
|
|
since this presumably suffers from the same problem.
|
|
This was a regression - the code to look up the correct type folder was no longer being called if items were added without a parent folder set
This may have been broken since commit bd49985a on 2010-05-02
|
|
|
|
|
|
|
|
|
|
GetFolder(InventoryFolderBase folder)"
This reverts commit 3525195bc9b5fdfd9799411edd452981ef1f4ebd.
|
|
GetFolder(InventoryFolderBase folder)
This involves no wire changes since the methods often just construct an InventoryFolderBase under the hood.
This is in line with other methods that alraedy allow requests via uuid
|