Commit Graph

39 Commits (fe4a67efb6f54cad3f00884712abe03704216421)

Author SHA1 Message Date
Melanie e39156c656 Send 503 when throttling textures 2013-04-25 01:38:21 +02:00
Melanie 12efac494a Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
	OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
	OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs
2013-01-19 02:38:04 +00:00
Justin Clark-Casey (justincc) 3eee991935 Explicitly stop PollServiceRequestManager() rather than relying on its destructor.
Hopes to address occasional shutdown failures from http://opensimulator.org/mantis/view.php?id=6503
2013-01-19 02:04:36 +00:00
UbitUmarov a0065ad616 create a new PollServiceHttpRequest req per loop since they can be sent to
another working thread
2012-09-27 00:14:50 +01:00
UbitUmarov 617f1b9223 just remove the damm thing 2012-09-26 16:17:49 +01:00
UbitUmarov 7e3eba1064 Seems nothing actually need the request body for getevents. so change
control flag to false
2012-09-26 15:41:57 +01:00
UbitUmarov 67fa657746 keep watchdog happy using it to kill his threads 2012-09-26 04:52:19 +01:00
UbitUmarov 654dd289f2 more changes to PollService 2012-09-26 03:05:27 +01:00
Melanie 2d02405186 Change the poll service to use a thread pool for replies to make sure the
event queues aren't blocked by other traffic.
2012-09-23 23:16:25 +02:00
Melanie 387e59ff7f Revamp the HTTP textures handler to allow a maximum of four fetches
at any time and to drop requests for avatars n longer in the scene
2012-09-14 21:24:25 +02:00
Melanie 7e17f4296e Fix background inventory loading (Viewer 3) so it won't lag out the sim 2012-08-24 23:48:01 +02:00
Melanie 771d79e83e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Monitoring/BaseStatsCollector.cs
	OpenSim/Region/Application/OpenSim.cs
	OpenSim/Region/Application/OpenSimBase.cs
	OpenSim/Region/Framework/Scenes/SceneManager.cs
	bin/OpenMetaverse.Rendering.Meshmerizer.dll
	bin/OpenMetaverse.StructuredData.dll
	bin/OpenMetaverse.dll
	bin/OpenMetaverseTypes.dll
	prebuild.xml
2012-07-28 00:39:36 +01:00
Justin Clark-Casey (justincc) 5aec0ff207 Move Watchdog and MemoryWatchdog classes into OpenSim.Framework.Monitoring with other monitoring code from OpenSim.Framework 2012-07-25 23:27:00 +01:00
Melanie 0797736fba Merge branch 'ubitwork' into avination 2012-07-17 10:25:13 +02:00
UbitUmarov 5874dfd342 fix PollServiceRequestManager 2012-07-17 09:47:20 +01:00
Melanie b35f97db46 Replace PollServiceRequestManager with older version, add extra logging to
event exceptions to see call path leading up to it.
2012-07-17 10:21:12 +02:00
Melanie 26d89777d8 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/PollServiceEventArgs.cs
	OpenSim/Region/ClientStack/Linden/Caps/EventQueue/EventQueueGetModule.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-07-06 20:51:18 +01:00
Melanie b8c2efa49c Convert the slow request queue into a regular queue and add some cleanup
and locking.
2012-07-06 00:23:05 +02:00
Melanie bf292ce26f Fix the boo-boo 2012-07-05 23:24:15 +02:00
Melanie 4854d77904 Add an EventType enum and Type field to the poll service event args. This allows
the manager to tell what type of event it is. All events except for lsl http in
go to the "slow queue" which is run once per second as before.
2012-07-05 23:09:20 +02:00
UbitUmarov bc5d554f54 use the pollEvent timeout paramenter on pooling 2012-07-04 17:58:32 +01:00
UbitUmarov e533eef962 *test2* http poll: increased again the pool rate do 10/s but increased timeout to 1s. So data there is less delay when there is new data, but enought waiting time for it to be avaiable 2012-07-04 15:07:10 +01:00
UbitUmarov b2fa20001f *test* slow http retries pool rate to original 1s 2012-07-04 06:14:47 +01:00
UbitUmarov d3f1fc79e5 *TO CHECK/REVIEW/REVERT/TEST whatever* pollService new requests get enqueued to unified requests queue directly. Retries get into that every 100ms. 3 working threads as before plus another that only does retries timming. 2012-07-01 01:33:20 +01:00
Melanie 05cf51cbbd Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/PollServiceWorkerThread.cs
2012-06-29 22:11:49 +01:00
Melanie 9a8de52940 Add an event to the poll service manager thread to allow starting it
when needed rather than once per second. That is just too slow!
2012-06-26 10:49:37 +02:00
Justin Clark-Casey (justincc) c6e375291a Don't include time to transmit response back to requester when assessing slow handling of requests.
This is to avoid logging a 'slow' request when the source of delay is the viewer in processing a response.
This is not something we can do much about on the server end - it's server-side delay that we're interested in.
To ensure consistency, this commit also had to refactor and simplify inbound non-poll network request handling, though there should be no functional change.
IOSHttpResponse no longer exposes the Send() method, only classes in OpenSim.Framework.Servers.HttpServer should be doing this.
Only the GetTextureHandler was sending its own response.  Now it leaves this to BaseHttpServer, like all other core handlers.
2012-06-13 00:03:44 +01:00
Justin Clark-Casey (justincc) 98b46d48fe Allow the thread watchdog to accept an alarm method that is invoked if the timeout is breached.
This alarm can then invoke this to log extra information.
This is used in LLUDPServer to show which client was being processed when incoming and outgoing udp watchdog alarms are triggered.
2012-06-07 02:44:13 +01:00
Justin Clark-Casey (justincc) f67f37074f Stop spurious scene loop startup timeout alarms for scenes with many prims.
On the first frame, all startup scene objects are added to the physics scene.
This can cause a considerable delay, so we don't start raising the alarm on scene loop timeouts until the second frame.
This commit also slightly changes the behaviour of timeout reporting.
Previously, a report was made for the very first timed out thread, ignoring all others until the next watchdog check.
Instead, we now report every timed out thread, though we still only do this once no matter how long the timeout.
2012-02-24 05:02:33 +00:00
Justin Clark-Casey (justincc) 7e488cd635 Remove unused avariable in PollServiceRequestManager 2011-11-07 23:24:13 +00:00
Justin Clark-Casey (justincc) c275c22928 Restart the event queue worker threads that I accidentally disabled earlier today in 8a0a78c.
Also adds these to the watchdogs with very large timeouts (should really be infinite)
2011-10-25 23:26:21 +01:00
Justin Clark-Casey (justincc) 8a0a78cbcc Make OpenSim.Framework.Servers.HttpServer rely on OpenSim.Framework instead of the other way around.
This is necessary so that code in HttpServer can use framework facilities such as the thread watchdog for monitoring purposes.
Doing this shuffle meant that MainServer was moved into OpenSim/Framework/Servers
Also had to make OpenSim.Framework.Console rely on OpenSim.Framework rather than the other way around since it in turn relies on HttpServer
MainConsole and some new interfaces had to be moved into OpenSim/Framework to allow this.  This can be reverted if parts of OpenSim.Framework stop relying on console presence (cheifly RegionInfo)
2011-10-25 20:24:21 +01:00
Justin Clark-Casey (justincc) 9ec672c70b Fix bugs in EventQueueGetModule.ClientClosed() and BaseHttpServer.RemovePollServerHTTPHandler() that stopped existing code in ClientClosed() from actually tearing down the poll handler
Actually doing the tear down appear to have no ill effects with region crossing and teleport.
2011-10-24 23:16:03 +01:00
John Hurliman b2ed348aa2 Implemented a Watchdog class. Do not manually create Thread objects anymore, use Watchdog.StartThread(). While your thread is running call Watchdog.UpdateThread(). When it is shutting down call Watchdog.RemoveThread(). Most of the threads in OpenSim have been updated 2009-10-22 12:33:23 -07:00
Melanie bc9e4cfd96 Add a RequestID (UUID.Random()) to the PollRequest and pass it to all
even hander delegates.
2009-09-21 18:11:40 +01:00
Melanie 04170521f0 Add a UUID param to NoEvents in PollServiceEventArgs to make it more generic 2009-09-21 14:59:31 +01:00
Jeff Ames 4ce5c894cf Add copyright header. Formatting cleanup. 2009-08-01 05:11:47 +00:00
Teravus Ovares f727f26bcc * An attempt to fix mantis #3953 2009-07-29 20:32:54 +00:00
Teravus Ovares 032aeb8b5d * Adds the ability to have a thread efficient long poll service (such as the eventqueue)
* If this doesn't melt the Http Server, this will significantly reduce the number of threads in use on regions with many users.
* Adds AddPollServiceHTTPHandler, and RemovePollServiceHTTPHandler to BaseHttpServer
* Generic enough to be used for many long poll services, not only the EventQueue.
2009-07-29 02:15:45 +00:00