Commit Graph

536 Commits

Author SHA1 Message Date
Diva Canto
894554faf6 Removed the MapItems thread. Redirected the map items requests to the services throttle thread. Didn't change anything in how that processor is implemented, for better or for worse. 2013-07-16 20:28:48 -07:00
Diva Canto
9432f3c94d Improvements to the ServiceThrottleModule: added a category and an itemid to the interface, so that duplicate requests aren't enqueued more than once. 2013-07-16 19:04:30 -07:00
Diva Canto
5f27aaa6dd UserManagementModule: in the continuation, call the method that also looks up the cache, because the resource may be here in the meantime 2013-07-16 18:22:42 -07:00
Diva Canto
d4720bd721 Added config var to fiddle with the Interval for the service throttle thread 2013-07-16 17:53:05 -07:00
Diva Canto
9f578cf0c8 Deleted a couple of verbose messages 2013-07-16 17:18:11 -07:00
Diva Canto
99a600753e Changed the name to ServiceThrottle/ServiceThrottleModule in order to reflect its more generic nature. 2013-07-16 17:06:17 -07:00
Diva Canto
3fbd2c54bc Eliminated the UserManagement/UserManagementModule throttle thread. Made the other one generic, taking any continuation. 2013-07-16 17:04:32 -07:00
Diva Canto
e0f0b88dec In the pursuit of using less CPU: now trying to avoid blocking queues altogether. Instead, this uses a timer. No sure if it's better or worse, but worth the try. 2013-07-16 13:01:39 -07:00
Diva Canto
6da50d34df Actually use DoubleQueue in UserManagement/UserManagementModule 2013-07-16 07:19:13 -07:00
Diva Canto
5a01ffa515 High CPU hunt: try a different blocking queue, DoubleQueue 2013-07-16 07:15:14 -07:00
Justin Clark-Casey (justincc)
eb14e5a175 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-07-15 23:28:02 +01:00
Justin Clark-Casey (justincc)
1b7b664c86 Add request received/handling stats for caps which are served by http poll handlers.
This adds explicit cap poll handler supporting to the Caps classes rather than relying on callers to do the complicated coding.
Other refactoring was required to get logic into the right places to support this.
2013-07-15 23:27:46 +01:00
Diva Canto
fbb01bd280 Protect against null requests 2013-07-15 11:37:49 -07:00
Diva Canto
b0140383da Cleanup old hg sessions (older than 2 days) 2013-07-14 15:47:54 -07:00
Diva Canto
f3b3e21dea Change the auth token to be the user's sessionid. 2013-07-14 07:28:40 -07:00
Diva Canto
b4f1b9acf6 Guard against unauthorized agent deletes. 2013-07-13 21:28:46 -07:00
Diva Canto
d0dfb744b2 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-07-09 14:13:51 -07:00
Diva Canto
67e500383e Put guards on a bunch of exception-inducing code, as seen in logs from load test. 2013-07-09 14:12:52 -07:00
Justin Clark-Casey (justincc)
c3db595944 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-07-08 22:07:27 +01:00
Justin Clark-Casey (justincc)
e19defde36 Add "show caps stats by user" and "show caps stats by cap" console commands to print various counts of capability invocation by user and by cap
This currently prints caps requests received and handled, so that overload of received compared to handled or deadlock can be detected.
This involves making BaseStreamHandler and BaseOutputStream record the ints, which means inheritors should subclass ProcessRequest() instead of Handle()
However, existing inheriting classes overriding Handle() will still work, albeit without stats recording.
"show caps" becomes "show caps list" to disambiguate between show caps commands
2013-07-08 22:03:07 +01:00
Justin Clark-Casey (justincc)
a38c2abae4 Make dictionary read/write locking consistent in CapabilitiesModule, rename two dictionary fields to standard m_ format 2013-07-08 18:07:04 +01:00
Diva Canto
c66a9a08e4 Placed a throttle on UserManagementModule for name lookups. Singularity apparently is flooding the sims with name requests. 2013-07-08 08:41:18 -07:00
Diva Canto
71e26555bd Revert "WARNING: BRUTE FORCE DEBUG AGAIN. AVOID USING THIS COMMIT"
This reverts commit 9b75d75724.
2013-07-06 18:16:27 -07:00
Diva Canto
391633c072 Some more fixes on strange behaviors of Unknown User, esp. related to large messy inventories and esp. related to kokua 2013-07-06 18:02:17 -07:00
Diva Canto
9b75d75724 WARNING: BRUTE FORCE DEBUG AGAIN. AVOID USING THIS COMMIT 2013-07-06 16:51:14 -07:00
Diva Canto
c358d5d168 Changed a few bits in Inventory/Archiver/InventoryArchiveReadRequest.cs to be less dependent on a Scene. 2013-07-05 20:17:10 -07:00
Justin Clark-Casey (justincc)
67407024a2 Update thread watchdog on GridServiceRequestThread periodically and turn off alarming
Unfortunately, alarm can spuriously go off if the thread blocks for a long time on an empty queue.
2013-07-06 00:29:19 +01:00
Diva Canto
ca26583e6b Delete some verbose debug messages 2013-07-04 15:17:06 -07:00
Diva Canto
8265a88c4a Throttle the viewer's requests for region handles. Apparently Kokua is requesting this for all landmarks in inventory. Not sure why. But this seems to be the root cause of the login freeze mentioned before. This commit adds a blocking queue / process thread pattern. 2013-07-04 14:51:18 -07:00
Diva Canto
d80936bbbb Guard against completely unknown user UUIDs. 2013-07-04 14:07:25 -07:00
Justin Clark-Casey (justincc)
93ee515d9d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-07-04 20:41:02 +01:00
Justin Clark-Casey (justincc)
fdafc2a16c With diva's permission, temporarily reinsert Unknown UserUMMAU3 to make sure that GUN7 failure has largely disappeared.
Unknown UserUMMAU3 insertion should definitely be removed down the line.
However, I would like a little more time to check the GUN* reduction first, since removing UMMAU3 will make these failures appear as GUN7 instead.
Also bumps GUN6 -> GUN7 and UMMAU2 -> UMMAU3
2013-07-04 20:39:16 +01:00
Diva Canto
ec9ffbb89a More debug, same issue 2013-07-04 11:36:10 -07:00
Diva Canto
119f84fe11 Squoosh one last opportunity for Unknown Users to creep in. 2013-07-02 17:03:04 -07:00
Diva Canto
4d24bf75fd Deleted debug messages. Fixed a null ref exception on the POST handler of GridUserServerPostHandler.cs 2013-07-02 16:46:35 -07:00
Diva Canto
626940ceb8 More debug messages 2013-07-02 15:39:10 -07:00
Diva Canto
e984bfb4c6 This should have a strong effect on the Unknown User issue mantis #6625 2013-07-02 14:31:39 -07:00
Diva Canto
ccca005969 HG: close a loophole by which if something was wrong with the ServiceURLs it resulted in never ending asset requests 2013-07-02 13:29:44 -07:00
Justin Clark-Casey (justincc)
635704b7ef Update debug unknown user name UserUMMTGUN3 to UserUMMTGUN4 and UserUMMAU -> UserUMMAU2 to track any new occurences.
This is to see the impact that Diva's fixes related to this issue (last one is currently commit c7383688)
You will need to clear your viewer cache for this to have any effect
Relates to http://opensimulator.org/mantis/view.php?id=6625
2013-07-01 23:54:04 +01:00
Justin Clark-Casey (justincc)
f7d09b898a Make the concept of namespaces explicit in dynamic attributes
This is in order to reduce the likelihood of naming clashes, make it easier to filter in/out attributes, ensure uniformity, etc.
All dynattrs in the opensim distro itself or likely future ones should be in the "OpenSim" namespace.
This does alter the underlying dynattrs data structure.  All data in previous structures may not be available, though old structures should not cause errors.
This is done without notice since this feature has been explicitly labelled as experimental, subject to change and has not been in a release.
However, existing materials data is being preserved by moving it to the "Materials" store in the "OpenSim" namespace.
2013-06-27 23:14:28 +01:00
Justin Clark-Casey (justincc)
f78d2ef166 Update temporary "Unknown UserUMMTGUN2" name to "Unknown UserUMMTGUN3" to see if Diva's recent HG updates (post 6c7e33f) fix this issue.
This string is returned if a UserManagementModule.TryGetUserNames() cannot find a server-side name binding or a user account for a given UUID.
This is only called when the viewer requests a binding via the UDP UUIDNameRequest message
2013-06-25 00:46:15 +01:00
Diva Canto
ca3ce6da73 HG: avoid call on localhost between sim and UAS for standalone. 2013-06-22 08:26:59 -07:00
Diva Canto
4778d67005 Finally moved HG agent transfers to use agent fatpacks. 2013-06-21 20:52:46 -07:00
Diva Canto
d8da83b4ff Removed the lock entirely 2013-06-11 15:50:12 -07:00
Diva Canto
a0fed03e10 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-06-11 15:36:52 -07:00
Diva Canto
b33db917f5 Really bad idea to lock m_UserCache for so long in UserManagementModule. Added a special lock object instead, if we really want to avoid concurrent executions of that code. 2013-06-11 15:36:27 -07:00
Melanie
26b66c730e Put the "script saved" and "notecard saved" messages back into the bottom
right corner.
2013-06-11 21:03:16 +01:00
Melanie
81ad9255b5 Hook up Keyframe motion to almost everything. Failing to cross a sim border
may yield unexpected results in some cases. No database persistence yet,
2013-06-06 03:03:05 +01:00
Justin Clark-Casey (justincc)
cc7aa88b26 Try caching the user name for a new agent earlier on in the process of establishing a connection, to see if this helps with "Unknown UserUMMTGUN" issues.
The UMMTGUN form of Unknown User seems to appear because a viewer sometimes sends a UUIDNameRequest UDP request that fails to find a binding.
However, in theory the incoming agent should have made that binding before any such request is triggered.
So moving this binding to an earlier point in the process to see if this makes a difference.
Unknown user name is also updated to UserUMMTGUN2 - if you see the old name then you need to clear your viewer cache.
This relates to http://opensimulator.org/mantis/view.php?id=6625
2013-05-29 23:08:54 +01:00
Justin Clark-Casey (justincc)
4898f18f89 Add HG regression TestCachedUserNameForNewAgent() 2013-05-29 21:28:38 +01:00