Commit Graph

919 Commits (c91e1012242dcc7808688099f2145a61c5ac7820)

Author SHA1 Message Date
Melanie ba0819be9e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
2013-02-27 20:40:48 +00:00
Justin Clark-Casey (justincc) 056f11c297 Show http poll handlers in separate http (poll) section of "show http-handlers" console command instead of never showing them (due to a previous bug).
The code was assuming that poll handlers were also included in general http handlers but this was not the case.
2013-02-27 20:33:11 +00:00
Melanie 578174d21c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/RegionLoader/Web/RegionLoaderWebServer.cs
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
2013-02-27 18:05:04 +00:00
Justin Clark-Casey (justincc) 80c19b7cac Make sure we dispose of WebResponse, StreamReader and Stream in various places where we were not already. 2013-02-27 00:21:02 +00:00
Melanie 9534d5f929 Merge branch 'master' into careminster 2013-02-22 01:28:54 +00:00
Diva Canto 4779f7d7d5 Deleted all AssemblyFileVersion directives 2013-02-19 17:14:55 -08:00
Melanie ea8c5ba707 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2013-02-15 21:42:16 +00:00
teravus c22276a169 * gracefully handle a Situation where a double close is called on the WebSocket handler 2013-02-14 18:43:53 -05:00
Melanie 45f5a6a6db Merge branch 'master' into careminster
Conflicts:
	bin/HttpServer_OpenSim.dll
2013-02-07 20:51:51 +00:00
teravus 94a5232d3a * Adds Websocket support to baseHttpServer and IHttpServer.cs . This allows modules to set up a websocket server that websocket clients can connect to. An example module is in OptionalModules/Example/WebSocketEchoTest/WebSocketEchoModule.cs 2013-02-07 10:50:17 -05:00
teravus 4867a7cbbf This is the final commit that enables the Websocket handler 2013-02-07 10:27:18 -05:00
teravus 1dc09d8e8f We're not really done here.. but we're getting there. Socket Read is working.. Still have to do Header.ToBytes and compose a websocket frame with a payload. 2013-02-05 18:02:25 -05:00
Melanie d3892bbd06 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
	OpenSim/Framework/Servers/VersionInfo.cs
	OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2013-02-05 21:30:12 +00:00
Justin Clark-Casey (justincc) 1f1da23097 Bump version and assembly version numbers from 0.7.5 to 0.7.6
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
Melanie c6e6614a44 Merge branch 'avination' into careminster 2013-01-24 23:25:38 +00:00
Melanie 8c6984eac1 Implement get version RemoteAdmin call 2013-01-23 23:12:48 +01:00
Melanie 87022b1fb4 Merge branch 'master' into careminster 2013-01-23 19:31:22 +00:00
BlueWall 2841ed05cf Merge branch 'master' of /home/opensim/var/repo/opensim 2013-01-23 08:16:18 -05:00
BlueWall 1776986dc3 Add additional return status
Adding additional return status for JsonRpcMethod. Now returns true/false
2013-01-23 08:14:21 -05: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
Melanie 70fa41863d Merge commit 'f54b398540698e6e09022fe77b6405624b532f5c' into careminster 2013-01-16 01:13:14 +00:00
BlueWall ca3e0d67d2 Add Json-Rpc 2.0 To Registered Handlers
Added registration json-rpc handlers in the http server. Covers version 2.0
  See: http://www.jsonrpc.org/specification
2013-01-15 10:04:16 -05:00
Melanie 2cb824d3fc Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-12-07 03:49:04 +00:00
Justin Clark-Casey (justincc) fdf8876e20 In BaseHttpServer.HandleRequest(), use Culture.SetCurrentCulture() rather than creating a new CultureInfo separately 2012-12-05 21:52:10 +00:00
Melanie fd7a83f439 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
	OpenSim/Region/CoreModules/World/Land/LandManagementModule.cs
2012-11-25 14:13:50 +00:00
Justin Clark-Casey (justincc) 22d4c52ffc Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests 2012-11-24 03:15:24 +00:00
Justin Clark-Casey (justincc) 999cb4b20c Make "show threads" and "thread abort" console commands available on all servers 2012-11-23 04:40:49 +00:00
Justin Clark-Casey (justincc) e0a3e01850 Make "force gc" console command available across all servers 2012-11-23 04:27:04 +00:00
Justin Clark-Casey (justincc) 4b46a0d536 Make "show version" console command available across all servers 2012-11-23 04:19:08 +00:00
Justin Clark-Casey (justincc) 065d6d6fe1 Delete unused BaseHttpServer.HandleAgentRequest() 2012-11-23 04:15:21 +00:00
Melanie 3c1a58c67a Merge branch 'master' into careminster 2012-11-22 13:37:27 +00:00
Justin Clark-Casey (justincc) 3ce00e97cc Factor out command script code.
This also allows comments in command scripts (lines starting with ;, # or //) to be used across all servers
2012-11-22 05:57:20 +00:00
Justin Clark-Casey (justincc) 9fcf3f1a3f Make "config show/set/get/save" console commands available on all servers 2012-11-22 05:48:41 +00:00
Justin Clark-Casey (justincc) 8269d2b893 Factor out common pid file creation and removal code.
Log path at which pid file is created or reason for failure to create.
2012-11-22 05:14:43 +00:00
Justin Clark-Casey (justincc) 42e87a6582 Add "get log level" command - this returns the current server session console logging level.
This supersedes getting information by calling "set log level" without a 4th argument, which is confusing.
2012-11-22 04:57:45 +00:00
Justin Clark-Casey (justincc) 34ff96a119 Remove unused BaseOpenSimServer.ShowHelp() 2012-11-22 04:52:29 +00:00
Justin Clark-Casey (justincc) 4c4379b50f Make "set log level" command available across all servers 2012-11-22 04:50:09 +00:00
Justin Clark-Casey (justincc) 45d1e6ab09 Make "show info" command available across all servers
This helpfully lists version information, startup location and console log level
2012-11-22 04:45:53 +00:00
Justin Clark-Casey (justincc) cf03d6ea92 Factor out common registration of "show uptime" command 2012-11-22 04:11:03 +00:00
Justin Clark-Casey (justincc) 5c48d7a378 factor out common HandleShow code for "show uptime" 2012-11-22 04:05:09 +00:00
Justin Clark-Casey (justincc) 74a20a62ee refactor: Factor out copy/pasted server uptime report code 2012-11-22 03:43:21 +00:00
Melanie 5f4ac1c5a3 Merge branch 'master' into careminster 2012-11-22 03:40:30 +00:00
Melanie 45eedb635a Merge branch 'master' into careminster 2012-11-20 20:25:15 +00:00
Justin Clark-Casey (justincc) dc5711ad62 minor: If logging full incoming HTTP data, don't deceptively print ... at the end of the body. 2012-11-20 04:10:03 +00:00
Melanie ccc81183b0 Merge commit '619c39e5144f15aca129d6d999bcc5c34133ee64' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/Caps/GetMeshModule.cs
2012-11-20 01:20:59 +00:00
Melanie 06fa1681ae Merge branch 'master' into careminster 2012-11-15 00:43:26 +00:00
Diva Canto 27b12cebbb A few more AssemblyInfos in a few more dlls. 2012-11-14 08:10:15 -08:00
teravus cda127e30f * Prep work switching the GetMeshModule over to a poll service.
* This still has the image throttler in it..  as is...  so it's not suitable for live yet.... The throttler keeps track of the task throttle but doesn't balance the UDP throttle yet.
2012-11-09 23:55:30 -05:00
Melanie 48569e856a Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-10-30 01:02:20 +00:00
Justin Clark-Casey (justincc) c97890ca69 Add "force gc" region console command which manually invokes garbage collection.
For debugging purposes.
2012-10-29 22:53:06 +00:00
Melanie 484eca323b Merge branch 'master' into careminster 2012-10-23 17:25:40 +01:00
Justin Clark-Casey (justincc) 2206132ab9 minor: Get content type handler logger to log "unset" for the content type instead of blank if no content type was set. 2012-10-23 00:44:47 +01:00
Justin Clark-Casey (justincc) 542d075376 minor: Use LogIncomingToContentTypeHandler() method for incoming HTTP data where this wasn't already used.
This allows log level 5 (log sample or large part of incoming post data) to operate and removes copy/paste.
2012-10-23 00:39:59 +01:00
Justin Clark-Casey (justincc) 991151250d If we're avoiding printing a long request warning for a GetTexture CAP call, check we received a request handler first since this is not guaranteed.
Resolves harmless logged exception when content type and generic xml rpc requests take more than 3 seconds.
2012-10-18 00:39:43 +01:00
Melanie 6ce93b22d1 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-10-12 19:05:06 +01:00
Justin Clark-Casey (justincc) 1f2472d0fc Extend "show stats" command to "show stats [list|all|<category name>]"
This allows different categories of stats to be shown, with options to list categories or show all stats.
Currently categories are scene and simulator and only a very few stats are currently registered via this mechanism.
This commit also adds percentage stats for packets and blocks reused from the packet pool.
2012-10-11 23:28:53 +01:00
Melanie 060d6fe8f4 Allow setting max connections for an endpoint 2012-09-30 16:30:16 +01:00
Diva Canto 91a5c602e3 Revert "Added request.Proxy=null everywhere, as discussed in http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow."
But the patch is here, in case anyone wants to try it.

This reverts commit 531edd51d8.
2012-09-30 07:48:03 -07:00
Diva Canto 531edd51d8 Added request.Proxy=null everywhere, as discussed in http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow.
Thanks R.Gunther (rigun@rigutech.nl) https://lists.berlios.de/pipermail/opensim-users/2012-September/010986.html
2012-09-30 07:22:55 -07:00
Melanie 944b1ed237 Merge branch 'avination' into careminster 2012-09-29 21:47:08 +01:00
Melanie 71dd55a1ce Merge branch 'master' into careminster
Conflicts:
	CONTRIBUTORS.txt
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/CoreModules/Avatar/Attachments/Tests/AttachmentsModuleTests.cs
2012-09-29 19:21:07 +01:00
Justin Clark-Casey (justincc) f457952755 Fix bug where debug http level 6 could not be specified. Also converts newlines at this level to '\n' to enable them to be logged. 2012-09-29 02:38:21 +01:00
Melanie 285039949c Update the Http server with a few additional properties. Adapt the test
server code to match.
2012-09-27 18:27:49 +01:00
Melanie 001ec0e2e6 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Agent/AssetTransaction/AgentAssetsTransactions.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-09-27 17:29:44 +01: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 bbaf2c5a80 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-09-24 20:14:00 +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
Diva Canto 772aedc731 Make BaseHttpServer throws say something useful. 2012-09-22 14:01:07 -07:00
Justin Clark-Casey (justincc) 1b0abf8f0c Comment out the long unused afaik HTTP agent handlers.
As far as I know, this was only used by the IBM Rest modules, much of which has been commented out for a very long time now.  Other similar code uses HTTP or stream handlers instead.
So commenting this out to reduce code complexity and the need to make this facility consistent with the others where it may not be used anyway.
If this facility is actually being used then please notify me or uncomment it if you are core.
2012-09-21 00:29:13 +01:00
Justin Clark-Casey (justincc) e29d563557 Add request number counting to incoming HTTP requests in the same way that this was already being done for outgoing HTTP requests.
This allows us to associate debug logging messages with the right request.
It also allows us to put a request number on 'long request' logging even if other debug logging is not enabled, which gives us some idea of whether every request is suffering this problem or only some.
This is a separate internal number not associated with any incoming number in the opensim-request-id header, this will be clarified when logging of this incoming request number is re-enabled.
This commit also adds port number to HTTP IN logging to allow us to distinguish between different request numbers on different ports.
2012-09-21 00:09:17 +01:00
Justin Clark-Casey (justincc) a5b3989e5d Insert a new log level 4 for HTTP IN and HTTP OUT that will log how long the request took.
This is only printed if debug http level >= 4 and the request didn't take more than the time considered 'long', in which case the existing log message is printed.
This displaces the previous log levels 4 and 5 which are now 5 and 6 respectively.
2012-09-20 23:18:19 +01:00
Justin Clark-Casey (justincc) 387a1bb283 Add ability to turn on/off logging of outgoing HTTP requests flowing through WebUtil.
This is for debugging purposes.
This is controlled via the "debug http" command which can already log incoming requests.
This now gains a mandatory parameter of in, out or all to control what is logged.
Log messages are also shortened and labelled and HTTP IN or HTTP OUT to be consistent with existing UDP PACKET IN and PACKET OUT messages.
2012-09-20 23:17:44 +01:00
Melanie a97436f2f1 Catch a nullref in the code to suppress GetTexture warnign spam we can't
do a thing about anyway.
2012-09-16 16:42:30 +02:00
Melanie 66bf1376b5 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs
2012-09-16 04:21:18 +01:00
Melanie db774d4292 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
	OpenSim/Region/Framework/Scenes/EventManager.cs
2012-09-16 04:11:20 +01:00
Melanie 2aa7a22129 Sequence/throttle asset retrievals. 2012-09-14 23:09:07 +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 52d74cf274 Allow setting max connections for an endpoint 2012-09-14 00:11:23 +02:00
Justin Clark-Casey (justincc) cdc3781f42 Fix usage statement on "debug http" console command since max level is now 5 rather than 3 2012-09-12 23:02:25 +01:00
Justin Clark-Casey (justincc) 7df7b86ec5 Fix bug in logging sample input at debug http level 4.
Also converts newlines to "\n" text.
2012-09-12 23:01:07 +01:00
Justin Clark-Casey (justincc) d53a53d4c5 Make "show http-handlers" command available for ROBUST instances as well as the simulator executable. 2012-09-12 00:10:48 +01:00
Justin Clark-Casey (justincc) 25111e703f Add levels 4 and 5 to "debug http" console command that will log a sample of incoming request data and the entire incoming data respectively.
See "help debug http" for more details.
2012-09-11 21:48:51 +01:00
Melanie 21c476228a Merge branch 'avination' into careminster 2012-09-10 13:53:00 +01:00
UbitUmarov a7250c6ea1 add a extra httppool thread to compensate for webfetchinventory 2012-09-10 01:23:20 +01:00
Melanie 924df14c5e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs
	OpenSim/Framework/Servers/VersionInfo.cs
2012-09-07 19:49:46 +01:00
Justin Clark-Casey (justincc) 15d5f3d09d Bump master code up to 0.7.5 now that 0.7.4 is out. 2012-09-04 00:11:14 +01: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) 1133f81dce Remove a couple of compiler warnings pointed out by SignpostMarv 2012-07-27 20:40:25 +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
Justin Clark-Casey (justincc) 35efa88c26 Rename OpenSim.Framework.Statistics to OpenSim.Framework.Monitoring.
This better reflects the long-term purpose of that project and matches Monitoring modules.
2012-07-25 23:11:50 +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 c256447f46 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-07-16 22:22:42 +01:00
Melanie ad75a4b50b Eliminate a spurious exception report when a https url is accessed with a wrong
CN
2012-07-15 12:28:58 +02:00
Melanie d632fd7124 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
2012-07-12 08:55:16 +01:00
Justin Clark-Casey (justincc) 916e3bf886 Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than constructing fresh copies.
The encodings are thread-safe and already used in such a manner in other places.
This isn't done where Byte Order Mark output is suppressed, since Encoding.UTF8 is constructed to output the BOM.
2012-07-11 22:54:22 +01: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 02cb0bf80a added a timeout paramenter to PollServiceEventArgs, so each type can define it's timeout 2012-07-04 17:40:02 +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 7cc5b3d7d3 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-06-26 17:35:55 +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) dca04c7b61 Avoid a race condition where an incoming request to a script external URL 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.
2012-06-22 23:16:18 +01:00
Justin Clark-Casey (justincc) 9f3feeff8d If starting scripts on initial sim start, provide INFO level log feedback 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.
2012-06-22 02:10:27 +01:00
Melanie eab211f94d Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-06-21 01:10:13 +01:00
Justin Clark-Casey (justincc) 4cfaa01c0a Remove STARTUP COMPLETE message from the startuplogo.txt file and into main logging 2012-06-20 01:06:55 +01:00
Justin Clark-Casey (justincc) 6b3f9fcde0 Comment out the neighbour and land in connectors from info logging that they are starting up 2012-06-20 00:42:54 +01:00
Justin Clark-Casey (justincc) ed513fc7be Fix bug introduced in commit c6e3752 (13 Jun 2012) where poll responses would always return OK even if some other status code had been set 2012-06-16 03:43:45 +01:00
Melanie 32cc9c6094 Merge branch 'master' into careminster 2012-06-15 15:59:49 +01:00
Justin Clark-Casey (justincc) c935f03467 Put all debug console commands into a single Debug section rather than scattering them over other categories 2012-06-15 03:32:43 +01:00
Melanie 30d872caad Merge branch 'master' into careminster 2012-06-15 02:53:34 +01:00
Melanie ca4e6d9b5b Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
2012-06-15 02:52:56 +01:00
Justin Clark-Casey (justincc) 94517c8d5c Make the "debug http" command available for robust as well as the simulator. 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.
2012-06-15 02:51:52 +01:00
Justin Clark-Casey (justincc) 257b1b517d Add main instance to internal MainServer.m_Servers list to simplify internal logic.
This does require the server to be added before it is set as the main Instance
2012-06-15 02:03:50 +01:00
Justin Clark-Casey (justincc) 478acfff34 When setting debug http level, do this for all known http servers, not just the main instance. 2012-06-15 01:24:36 +01:00
Justin Clark-Casey (justincc) 6993a26ba5 Get rid of some unnecessary null checks in RegionApplicationBase.StartupSpecific() - a constructor can never return null.
Also adds some method doc to MainServer
2012-06-15 00:40:12 +01:00
Justin Clark-Casey (justincc) 9825861f4a Shuffle "debug http" levels so that 1 and 2 now cause different levels of warn to be logged if we receive invalid xml for xmlrpc. 2012-06-14 23:46:09 +01:00
Justin Clark-Casey (justincc) f4b02f8e39 Fix a regression in BaseHttpServer.HandleXmlRpcRequests() from recent c6e3752
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!)
2012-06-14 04:29:15 +01:00
Melanie 12621201ba Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
2012-06-13 02:15:12 +01: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
Melanie e8cd9fbbb7 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
2012-06-07 23:33:40 +01:00
BlueWall a1e857932a Make change to fix Windows builds 2012-06-07 10:17:37 -04: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
Melanie 884c0e7bb1 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Data/MySQL/MySQLSimulationData.cs
	OpenSim/Data/MySQL/Resources/RegionStore.migrations
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
	OpenSim/Region/CoreModules/ServiceConnectorsOut/Simulation/LocalSimulationConnector.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
2012-05-27 19:24:30 +01:00
SignpostMarv 99cebec4ab adding status codes from rfc 6585
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-24 12:09:15 -04:00
SignpostMarv 87f9aa9d08 porting IDE tooltip-friendly documentation tweaks from Aurora-Sim
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-05-24 12:09:15 -04:00
Melanie a90822f4b8 Merge branch 'master' into careminster 2012-05-10 00:42:10 +01:00
Justin Clark-Casey (justincc) 6987aef38d Improve logging on the prim inventory script asset request path for future use.
This adds name and description of the request handler to http request logging when DebugLevel >= 1
2012-05-09 23:12:30 +01:00
Melanie 05634907e9 Merge branch 'master' into careminster 2012-05-08 00:07:18 +01:00
Oren Hurvitz 15844da3af Log the full exception when errors occur in BaseHttpServer 2012-05-07 19:56:00 +01:00
Melanie 31ab8b2fe0 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/WebUtil.cs
	OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
	OpenSim/Region/CoreModules/Asset/FlotsamAssetCache.cs
	OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-05-05 10:32:04 +01:00
Justin Clark-Casey (justincc) fb99ee6774 minor: Tweak BaseHttpServer message to make it clear that this relates to slow handling of inbound requests. 2012-05-04 01:16:56 +01:00
Justin Clark-Casey (justincc) 231a3bf147 Implement optional name and description on http stream handlers so that we 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.
2012-05-03 01:45:49 +01:00
Justin Clark-Casey (justincc) 737e177163 Revert "Log the full exception when errors occur in BaseHttpServer"
This reverts commit e31e7c68c8.

Applied for patch assessment and accidentally committed too early.
2012-04-27 23:46:46 +01:00
Oren Hurvitz e31e7c68c8 Log the full exception when errors occur in BaseHttpServer 2012-04-27 21:52:04 +01:00
Melanie 464fb2533f Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
	OpenSim/Services/Connectors/Hypergrid/GatekeeperServiceConnector.cs
2012-04-20 16:48:43 +01:00
Justin Clark-Casey (justincc) f3dda2d85d Add more exception detail to Exception and IOException throws in BaseHttpServer.HandleRequest() 2012-04-20 03:12:25 +01:00
Melanie b39de2425c Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
	OpenSim/Region/CoreModules/World/Land/LandObject.cs
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-04-07 04:52:14 +01:00
Diva Canto cdbe34716f Thank you, BaseHttpServer, for telling me where things go wrong. 2012-04-06 11:21:27 -07:00
Melanie f3132c45d9 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs
	OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Tests/Common/Mock/TestClient.cs
2012-03-31 02:18:02 +01:00
Justin Clark-Casey (justincc) e5343bccdf Add Extended flavour option to opensim version information.
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.
2012-03-30 02:11:32 +01:00
Melanie c7e302864a Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
	OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-03-18 20:44:56 +00:00
Justin Clark-Casey (justincc) 59b6f6a6e0 minor: reuse threadpool count we just fetched instead of fetching it again 2012-03-16 03:56:56 +00:00
Justin Clark-Casey (justincc) bece2023e7 Add total scripts count to "show threads"
However, this returns 0 on Mono (at least on 2.6.7)!  So not showing if it is zero.
2012-03-16 03:52:13 +00:00
Justin Clark-Casey (justincc) 6e8f80f1ab Improve threadpool reporting to "show threads" console command (also gets printed out periodically) 2012-03-16 03:26:47 +00:00
Melanie b0fc96c17d Merge branch 'master' into careminster 2012-03-08 19:10:22 +00:00
Justin Clark-Casey (justincc) 749c3fef8a Change "help" to display categories/module list then "help <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.
2012-03-08 01:51:37 +00:00
Melanie 1f32730798 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/VersionInfo.cs
	OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2012-03-03 09:58:57 +00:00
Justin Clark-Casey (justincc) aabbbb32ff Flick master up to 0.7.4 2012-02-29 23:45:14 +00:00
Melanie 37068d17c5 Merge branch 'master' into careminster 2012-02-24 09:56:06 +00:00
Justin Clark-Casey (justincc) 9e6ffe7798 Rename Watchdog.GetThreads() to GetThreadsInfo() to reflect what it actually returns and for consistency. 2012-02-24 05:15:47 +00: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
Melanie 985526b662 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
	OpenSim/Region/Framework/Scenes/Serialization/SceneObjectSerializer.cs
2012-02-18 22:21:10 +00:00
Justin Clark-Casey (justincc) b817c337dc On Windows automatically load the correct native ODE library depending on 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.
2012-02-18 00:33:52 +00:00
Melanie 727ddffb71 Merge branch 'master' into careminster 2012-01-31 21:53:32 +00:00
Justin Clark-Casey (justincc) 1505c22995 Use Environment.TickCount & Int32.MaxValue; instead of 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
2012-01-31 21:09:26 +00:00
Melanie 50aa89dae6 Merge commit 'eda770e978c09c756d15ba62dbbf6ee34a61b2f5' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2011-12-08 03:24:25 +00:00
Justin Clark-Casey (justincc) e6272b8d56 Stop also adding an ordinary http handler when we set up a poll http handler.
It appears that this is entirely unnecessary since the poll http handlers are dealt with on a separate code path.
2011-12-07 12:28:42 +00:00
Justin Clark-Casey (justincc) 4567555c49 Implement IOSHttpRequest and IOSHttpResponse http interfaces and use instead 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.
2011-12-05 20:44:20 +00:00
Melanie bc17e2e9cf Merge branch 'master' into bigmerge 2011-12-05 20:32:35 +00:00
Melanie b60ff651a3 Merge branch 'master' into bigmerge 2011-12-01 12:16:59 +00:00
Justin Clark-Casey (justincc) fa63054c4f On "show caps", stop excluding the seed cap but do exclude it elsewhere 2011-11-29 20:37:03 +00:00
Justin Clark-Casey (justincc) 679a5f6c0b With "debug http 1", show the path with the query string instead of just the path.
Also simplifies debug levels to just 0 and 1
2011-11-29 17:26:45 +00:00
Justin Clark-Casey (justincc) b6b0bc7b32 Add "debug http" command for currently simple extra debug logging of non-event queue inbound http requests to a simulator 2011-11-29 16:15:52 +00:00
Melanie 31736b1aac Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
2011-11-17 19:04:27 +00:00
Justin Clark-Casey (justincc) aea547cd11 fix build break on UserManagementModule.
This also adds time since started to "show threads".  Unfortunately these two changes got mixed in.
2011-11-15 23:24:51 +00:00
Justin Clark-Casey (justincc) 29eb3b2eb5 improve formatting of "show threads" 2011-11-15 22:51:12 +00:00
Justin Clark-Casey (justincc) ccae787d03 send a watchdog heartbeat for a poll worker thread when it's actually run 2011-11-15 22:20:44 +00:00
Justin Clark-Casey (justincc) 7db38a351c Add number of milliseconds since last update to "show threads" 2011-11-15 21:49:13 +00:00
Melanie a1426739a2 Merge branch 'master' into bigmerge 2011-11-10 17:35:35 +00:00
Justin Clark-Casey (justincc) 7e488cd635 Remove unused avariable in PollServiceRequestManager 2011-11-07 23:24:13 +00:00
Melanie fd22159d0c Merge branch 'master' into bigmerge
Conflicts:
	OpenSim/Framework/Watchdog.cs
2011-10-26 01:27:24 +01: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) a4d4f54848 minor: add "threads show" as synonym for "show threads" for consistency 2011-10-25 20:59:27 +01:00
Justin Clark-Casey (justincc) 968cae6c17 Add "threads abort <thread-id>" simulator console command that allows us to abort a watchdog managed thread.
This is for diagnostic purposes.
2011-10-25 20:49:46 +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
Melanie 27aca49a1f Merge commit 'e14cb45b9bc4c78300cb804833cb66c1c2e62187' into bigmerge 2011-10-25 03:26:51 +01:00
Melanie c8dfef1583 Merge commit '9ec672c70b28b8c1d6d81bab7744fcf7bf9b83c7' into bigmerge 2011-10-25 03:26:44 +01:00
Justin Clark-Casey (justincc) e14cb45b9b Drop some unnecessary ContainsKey() checking before Remove() in BaseHttpServer()
Remove() presumably does this check anyway since it just returns false if the key is not in the collection.
2011-10-24 23:26:41 +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
Melanie 2f6cc77154 Adjust CM version tag 2011-10-12 07:08:23 +01:00
Melanie 336f6f7ec4 Merge commit 'f8c06c61149b1ab3e3002247280be250b558a79e' into bigmerge 2011-10-12 07:07:37 +01:00
Melanie d1e681f682 Merge commit 'e742cffe15d3e50841908d7babc2e4c4a7630635' into bigmerge
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Attachments/AttachmentsModule.cs
2011-10-11 23:14:23 +01:00
Justin Clark-Casey (justincc) f8c06c6114 flip master version up to 0.7.3 2011-10-07 23:41:55 +01:00
Justin Clark-Casey (justincc) e742cffe15 Add Enabled switch in new [Attachments] section in OpenSimDefaults.ini to allow attachments to be temporarily turned off.
This is for debugging purposes.  Defaults to Attachments Enabled
2011-09-30 01:19:22 +01:00
Tom 66dec3b874 Resolve merge commits, stage 1 2011-09-04 07:06:36 -07:00
Justin Clark-Casey (justincc) d74686fd51 read m_rpcHandlersKeepAlive under appropriate lock 2011-08-22 02:25:58 +01:00