aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Servers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Avoid a race condition where an incoming request to a script external URL ↵Justin Clark-Casey (justincc)2012-06-222-5/+11
| | | | | | | | | | | can trigger an exception is the URL was being removed at the same time. This involves three steps 1) Return gracefully in UrlModule.HttpRequestHandler() instead of throwing an exception when the url cannot be found in its index 2) Return true instead of false in HasEvents() if no matching request is found in the map. This call will only happen in the first place for raced requests. 3) Return a 404 in GetEvents() if the request is not in the index, rather than a blank 200 OK. Many thanks to Tom Haines in http://opensimulator.org/mantis/view.php?id=6051 for doing some of the work on this.
* If starting scripts on initial sim start, provide INFO level log feedback ↵Justin Clark-Casey (justincc)2012-06-221-1/+1
| | | | | | | each time 50 scripts have been started. This is to provide an indication of what's happening now that the default isn't to report every single script start. Changes XEngine logging level in OpenSim.exe.config from WARN to INFO.
* Remove STARTUP COMPLETE message from the startuplogo.txt file and into main ↵Justin Clark-Casey (justincc)2012-06-201-1/+3
| | | | logging
* Comment out the neighbour and land in connectors from info logging that they ↵Justin Clark-Casey (justincc)2012-06-201-1/+1
| | | | are starting up
* Fix bug introduced in commit c6e3752 (13 Jun 2012) where poll responses ↵Justin Clark-Casey (justincc)2012-06-161-3/+1
| | | | would always return OK even if some other status code had been set
* Put all debug console commands into a single Debug section rather than ↵Justin Clark-Casey (justincc)2012-06-151-1/+1
| | | | scattering them over other categories
* Make the "debug http" command available for robust as well as the simulator. ↵Justin Clark-Casey (justincc)2012-06-152-4/+59
| | | | | | This allows one to see incoming requests as they happen. This required making everything use the common MainServer class for registering and retrieving http servers, rather than duplicate structures.
* Add main instance to internal MainServer.m_Servers list to simplify internal ↵Justin Clark-Casey (justincc)2012-06-152-11/+61
| | | | | | logic. This does require the server to be added before it is set as the main Instance
* When setting debug http level, do this for all known http servers, not just ↵Justin Clark-Casey (justincc)2012-06-152-21/+40
| | | | the main instance.
* Get rid of some unnecessary null checks in ↵Justin Clark-Casey (justincc)2012-06-151-4/+27
| | | | | | RegionApplicationBase.StartupSpecific() - a constructor can never return null. Also adds some method doc to MainServer
* Shuffle "debug http" levels so that 1 and 2 now cause different levels of ↵Justin Clark-Casey (justincc)2012-06-141-8/+27
| | | | warn to be logged if we receive invalid xml for xmlrpc.
* Fix a regression in BaseHttpServer.HandleXmlRpcRequests() from recent c6e3752Justin Clark-Casey (justincc)2012-06-141-1/+1
| | | | | Accidentally make responseString null by default instead of String.Empty. It needs to be something in case the XmlRpcRequest deserialize throws an exception due to bad xml (a failure which we silently swallow!)
* Don't include time to transmit response back to requester when assessing ↵Justin Clark-Casey (justincc)2012-06-135-314/+169
| | | | | | | | | | 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.
* Make change to fix Windows buildsBlueWall2012-06-071-1/+1
|
* Allow the thread watchdog to accept an alarm method that is invoked if the ↵Justin Clark-Casey (justincc)2012-06-071-0/+2
| | | | | | | 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.
* adding status codes from rfc 6585SignpostMarv2012-05-241-2/+22
| | | | Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
* porting IDE tooltip-friendly documentation tweaks from Aurora-SimSignpostMarv2012-05-241-134/+223
| | | | Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
* Improve logging on the prim inventory script asset request path for future use.Justin Clark-Casey (justincc)2012-05-091-2/+2
| | | | This adds name and description of the request handler to http request logging when DebugLevel >= 1
* Log the full exception when errors occur in BaseHttpServerOren Hurvitz2012-05-071-19/+19
|
* minor: Tweak BaseHttpServer message to make it clear that this relates to ↵Justin Clark-Casey (justincc)2012-05-041-1/+1
| | | | slow handling of inbound requests.
* Implement optional name and description on http stream handlers so that we ↵Justin Clark-Casey (justincc)2012-05-039-35/+88
| | | | | | can relate a slow request to what the handler actually does and the agent it serves, if applicable. This is most useful for capabilities where the url is not self-describing.
* Revert "Log the full exception when errors occur in BaseHttpServer"Justin Clark-Casey (justincc)2012-04-271-19/+19
| | | | | | This reverts commit e31e7c68c8abfd61fed6dabac5403d8adf42ae87. Applied for patch assessment and accidentally committed too early.
* Log the full exception when errors occur in BaseHttpServerOren Hurvitz2012-04-271-19/+19
|
* Add more exception detail to Exception and IOException throws in ↵Justin Clark-Casey (justincc)2012-04-201-2/+2
| | | | BaseHttpServer.HandleRequest()
* Thank you, BaseHttpServer, for telling me where things go wrong.Diva Canto2012-04-061-2/+2
|
* Add Extended flavour option to opensim version information.Justin Clark-Casey (justincc)2012-03-301-1/+2
| | | | | This flavour is for changes in addition to the 0.7.3-post-fixes branch that are too large to be considered fixes but should be reasonably stable. This flavour will almost certainly never see a formal release.
* minor: reuse threadpool count we just fetched instead of fetching it againJustin Clark-Casey (justincc)2012-03-161-1/+1
|
* Add total scripts count to "show threads"Justin Clark-Casey (justincc)2012-03-161-2/+10
| | | | However, this returns 0 on Mono (at least on 2.6.7)! So not showing if it is zero.
* Improve threadpool reporting to "show threads" console command (also gets ↵Justin Clark-Casey (justincc)2012-03-161-6/+2
| | | | printed out periodically)
* Change "help" to display categories/module list then "help ↵Justin Clark-Casey (justincc)2012-03-081-10/+10
| | | | | | | | | | | <category/module>" to display commands in a category. This is to deal with the hundred lines of command splurge when one previously typed "help" Modelled somewhat on the mysql console One can still type help <command> to get per command help at any point. Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet). Does not affect command parsing or any other aspects of the console apart from the help system. Backwards compatible with existing modules.
* Flick master up to 0.7.4Justin Clark-Casey (justincc)2012-02-291-1/+1
|
* Rename Watchdog.GetThreads() to GetThreadsInfo() to reflect what it actually ↵Justin Clark-Casey (justincc)2012-02-241-1/+1
| | | | returns and for consistency.
* Stop spurious scene loop startup timeout alarms for scenes with many prims.Justin Clark-Casey (justincc)2012-02-241-0/+2
| | | | | | | | 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.
* On Windows automatically load the correct native ODE library depending on ↵Justin Clark-Casey (justincc)2012-02-181-1/+3
| | | | | | | | | whether the process is 32-bit or 64-bit In theory, this means that a 64-bit Windows OS user can now run OpenSim.exe with ODE and use more than 2 (or 3) GB of memory. However, this is completely untested since I don't currently own a 64-bit Windows box. Feedback appreciated. Using OpenSim.32BitLaunch.exe should continue to work. Other platforms are unaffected. This will currently not work with sqlite - I will add that too if this works.
* Use Environment.TickCount & Int32.MaxValue; instead of ↵Justin Clark-Casey (justincc)2012-01-311-1/+1
| | | | | | | Util.EnvironmentTickCount(); when producing the threads report to reduce wraparound. This matches the tickcount masking in the thread watchdog. For some reason, Util.EnvironmentTickCount() masks ticks by 0x3fffffff instead of 0xffffffff
* Stop also adding an ordinary http handler when we set up a poll http handler.Justin Clark-Casey (justincc)2011-12-072-11/+5
| | | | It appears that this is entirely unnecessary since the poll http handlers are dealt with on a separate code path.
* Implement IOSHttpRequest and IOSHttpResponse http interfaces and use instead ↵Justin Clark-Casey (justincc)2011-12-0512-15/+210
| | | | | | | | of OSHttpRequest/OSHttpResponse. This is required for the substitution of different HTTP servers or the newer HttpServer.dll without having to commit to a particular implementation. This is also required to write regression tests that involve the HTTP layer. If you need to recompile, all you need to do is replace OSHttpRequest/OSHttpResponse references with IOSHttpRequest/IOSHttpResponse.
* On "show caps", stop excluding the seed cap but do exclude it elsewhereJustin Clark-Casey (justincc)2011-11-291-1/+3
|
* With "debug http 1", show the path with the query string instead of just the ↵Justin Clark-Casey (justincc)2011-11-291-21/+21
| | | | | | path. Also simplifies debug levels to just 0 and 1
* Add "debug http" command for currently simple extra debug logging of ↵Justin Clark-Casey (justincc)2011-11-291-12/+43
| | | | non-event queue inbound http requests to a simulator
* fix build break on UserManagementModule.Justin Clark-Casey (justincc)2011-11-151-4/+8
| | | | This also adds time since started to "show threads". Unfortunately these two changes got mixed in.
* improve formatting of "show threads"Justin Clark-Casey (justincc)2011-11-151-1/+8
|
* send a watchdog heartbeat for a poll worker thread when it's actually runJustin Clark-Casey (justincc)2011-11-151-0/+3
|
* Add number of milliseconds since last update to "show threads"Justin Clark-Casey (justincc)2011-11-151-3/+7
|
* Remove unused avariable in PollServiceRequestManagerJustin Clark-Casey (justincc)2011-11-071-8/+6
|
* Restart the event queue worker threads that I accidentally disabled earlier ↵Justin Clark-Casey (justincc)2011-10-251-7/+9
| | | | | | today in 8a0a78c. Also adds these to the watchdogs with very large timeouts (should really be infinite)
* minor: add "threads show" as synonym for "show threads" for consistencyJustin Clark-Casey (justincc)2011-10-251-0/+5
|
* Add "threads abort <thread-id>" simulator console command that allows us to ↵Justin Clark-Casey (justincc)2011-10-251-0/+25
| | | | | | abort a watchdog managed thread. This is for diagnostic purposes.
* Make OpenSim.Framework.Servers.HttpServer rely on OpenSim.Framework instead ↵Justin Clark-Casey (justincc)2011-10-254-19/+106
| | | | | | | | | 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)
* Drop some unnecessary ContainsKey() checking before Remove() in BaseHttpServer()Justin Clark-Casey (justincc)2011-10-241-12/+2
| | | | Remove() presumably does this check anyway since it just returns false if the key is not in the collection.