Justin Clark-Casey (justincc)
7deb2d9646
minor: add some more detail to the logging if an LLClientView fails to process a packet
2012-12-14 00:00:23 +00:00
Justin Clark-Casey (justincc)
c77728ebf8
Add WaitForEventCompletionOnScriptStop [XEngine] config param to OpenSimDefaults.ini to allow change of the wait time for an event to complete on script removal before aborting its thread
...
Default is 1000, as has previously been the case.
This parameter exists for further debug work concerning mono 2.10 crashes that may be related to locks not being removed on Thread.Abort
2012-12-14 00:00:16 +00:00
Justin Clark-Casey (justincc)
83487bfbec
Log situations where workitem event threads are aborted on stop request because they failed to complete event processing within the given timeout.
...
This is for bug hunting purposes where thread aborts may be causing dangling lock issues and subsequent vm crashes on mono (with ReaderWriterLockSlim, etc.)
2012-12-14 00:00:01 +00:00
Justin Clark-Casey (justincc)
e6f475735f
Add "debug script log" command to allow setting a numeric debug level on individual IScriptInstances for debugging purposes.
...
Current, state changes and event fires can be logged for individual scripts.
See command help for more details.
2012-12-13 23:59:53 +00:00
Justin Clark-Casey (justincc)
48486b137a
Add asset id to "show script" and "show scripts" command output to make it easier to extract and inspect the script's asset via "dump asset"
2012-12-13 23:59:44 +00:00
Justin Clark-Casey (justincc)
4490020197
Use a thread abort safe version of OpenMetaverse.DoubleDictionary with the aim of avoiding OpenSimulator problems due to script thread aborts.
...
When an object is removed, its scripts are stopped and then the thread running them is aborted if stop takes too long.
However, it appears that aborting a thread at just the wrong moment when it is obtaining a ReaderWriterLockSlim lock can leave this lock in an inconsistent state.
One symptom of this is that mono leaps to 100% cpu and a vm thread dump reveals lots of threads waiting for a ReaderWriterLockSlim lock without any thread actually holding it.
This is probably the same problem as encountered originally in commit 12cebb12
This commit looks to plaster this problem by putting lock obtaining methods inside finally blocks which should be uninterruptible by thread aborts.
2012-12-12 00:40:16 +00:00
Justin Clark-Casey (justincc)
770caad0ad
minor: change method doc on GetTextureHandler.TryParseRange(), mainly to trigger another build
2012-12-12 00:39:39 +00:00
Justin Clark-Casey (justincc)
13e29ae3f7
Allow GetTexture calls with no second value in the range header (e.g. just 5333-)
...
It looks like the latest Kokua is doing this.
As per http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html , leaving off the second value is legal
This indicates the caller wants the rest of the entity.
2012-12-12 00:39:29 +00:00
Justin Clark-Casey (justincc)
b52ac8c5d1
Remove very probably unused PrimitiveBaseShape(bool) constructor to reduce code complexity
2012-12-12 00:22:56 +00:00
Justin Clark-Casey (justincc)
97a907ad84
Don't pointlessly set ExtraParams = byte[1] in PrimitiveBaseShape since this is ignored by the ExtraParams properly anyway
2012-12-12 00:22:47 +00:00
Justin Clark-Casey (justincc)
7ced077821
In BaseHttpServer.HandleRequest(), use Culture.SetCurrentCulture() rather than creating a new CultureInfo separately
2012-12-12 00:22:24 +00:00
Justin Clark-Casey (justincc)
fdbd448cc7
In XEngine.DoOnRezScript() use Culture.SetCurrentCulture() instead of constructing a new CultureInfo separately
2012-12-12 00:22:15 +00:00
Justin Clark-Casey (justincc)
d8c88f4894
Instead of printing script errors out to console, put to debug log so that we also get timestamps.
...
This commit also adds script name, part name, uuid, etc. for later identification.
This information has been sent to console since 2009 but may be turned down if it proves too noisy.
However, I still currently need it to investigate some region problems probably triggered by scripting.
2012-12-06 00:31:15 +00:00
Justin Clark-Casey (justincc)
d558bbfa35
minor: Fix more compiler warnings in CoreModules tests by properly overriding OpenSimTestCase.SetUp()
2012-12-06 00:30:45 +00:00
Justin Clark-Casey (justincc)
992dc1c2c7
Add engine-wide events queued and events processed numbers to output of "xengine status" console command. For debugging purposes.
2012-12-06 00:30:38 +00:00
Justin Clark-Casey (justincc)
ce1d3e9c96
Remove some mono warnings in script tests, chiefly where SetUp() wasn't properly calling to OpenSimTestCase.SetUp()
2012-12-06 00:30:30 +00:00
Justin Clark-Casey (justincc)
a8a712e1f8
Add IScriptInstance.EventsQueued to match EventsProcessed instead of asking callers to lock and directly inspect the EventQueue
2012-12-06 00:30:18 +00:00
Justin Clark-Casey (justincc)
5a71cbe530
For now, sort "show scripts" output in descending order sorted by events processed.
...
For debug purposes - should later add options to allow different sorting or show only highest 10, etc.
2012-12-06 00:30:11 +00:00
Justin Clark-Casey (justincc)
c2bdb36c11
Add IScriptInstance.EventsProcessed stat so that we can record this information and display in "show scripts" for debug purposes
2012-12-06 00:30:04 +00:00
Justin Clark-Casey (justincc)
6d03a5d01b
minor: tidy up spacing at bottom of MundaneFrameworkTests
2012-12-06 00:29:49 +00:00
Justin Clark-Casey (justincc)
ad75cb2682
minor: also comment out the debug log message which reports searching for child agents in simulator scenes for now.
2012-12-06 00:29:15 +00:00
Justin Clark-Casey (justincc)
f46478f1df
minor: Comment out "Delivering IM to..." messages for now.
2012-12-06 00:29:07 +00:00
Justin Clark-Casey (justincc)
7c811c39c8
Fix problem where restarting the currently selected region would stop various console commands (e.g. "show users") from working.
...
This was because the "currently selected" scene reference was being left as the dead scene instead of the restarted Scene object.
2012-12-06 00:26:42 +00:00
Justin Clark-Casey (justincc)
e18d6c0956
Show many more primitive properties on console command "show part name/id/pos"
2012-11-28 03:47:11 +00:00
Justin Clark-Casey (justincc)
a7af8345a5
Fix database service unit test failures by temporarily reverting BasicDataServiceTest extending OpenSimTestCase.
...
Mono 2.4.3 doesn't like this when running nunit, with nunit throwing
AssetTests`2 : System.MemberAccessException : Cannot create an instance of OpenSim.Data.Tests.AssetTests`2[TConn,TAssetData] because Type.ContainsGenericParameters is true.
and similar. Mono 2.10.8.1 does not have this issue.
So will wait until min version of mono bumps before restoring.
2012-11-28 03:46:58 +00:00
Justin Clark-Casey (justincc)
b5ecc31096
Combine TestDeleteSceneObjectAsync() with TestDeRezSceneObject() as they are functionally identical.
...
Move TestDeleteSceneObjectAsync() and TestDeleteSceneObjectAsyncToUserInventory() from SceneObjectBasicTests -> SceneObjectDeRezTests
2012-11-28 03:46:49 +00:00
Justin Clark-Casey (justincc)
3a297c7fe6
Fix regression TestDeleteSceneObjectAsyncToUserInventory by adding a BasicInventoryAccessModule() and re-enable in test suite.
2012-11-28 03:46:41 +00:00
Justin Clark-Casey (justincc)
c3243ce0ce
Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests
2012-11-28 03:46:33 +00:00
Justin Clark-Casey (justincc)
ace552ecc5
Make "show threads" and "thread abort" console commands available on all servers
2012-11-28 03:46:10 +00:00
Justin Clark-Casey (justincc)
1d75570c59
Make "force gc" console command available across all servers
2012-11-28 03:46:04 +00:00
Justin Clark-Casey (justincc)
70ccc63b83
Make "show version" console command available across all servers
2012-11-28 03:45:56 +00:00
Justin Clark-Casey (justincc)
31373ee099
Delete unused BaseHttpServer.HandleAgentRequest()
2012-11-28 03:45:50 +00:00
Justin Clark-Casey (justincc)
afaf7b5b94
Enable further client stack packet pooling by default by setting RecycleBaseUDPPackets = true by default.
...
This reduces base memory churn of every client connection, improving the garbage collection situation.
The effect is a significant portion of base load (an avatar standing still on a completely blank island)
but will probably still be swallowed up by other memory use on active regions.
Tests have shown no noticeable impact on speed of processing incoming packets, though setting remains
in case a switch back is needed.
2012-11-28 03:45:43 +00:00
Justin Clark-Casey (justincc)
6d0f66ae87
minor: Make note in log if scene was restarted due to an unrecoverable physics error
2012-11-28 03:45:15 +00:00
Justin Clark-Casey (justincc)
207233335e
Add AllowRegionRestartFromClient setting to [EstateManagement] section of OpenSim.ini.
...
Setting this to false will block all restart requests from the viewer even if they are otherwise legitimate.
One use is to block region restarts if necessary whilst restart functionality remains buggy or triggers bugs in modules,
though these should be fixed as soon as practicable.
Default is true, as has been the case historically.
2012-11-28 03:44:44 +00:00
Justin Clark-Casey (justincc)
e9fbfd0905
Remove the redundant BypassPermissions() checks in EstateManagmentModule.
...
This is repeated in the PermissionsModule and checking it earlier does not allow a force override of the bypass value
2012-11-28 03:40:59 +00:00
Justin Clark-Casey (justincc)
c35f974637
minor: Add some console feedback on region restart and log who requested a region restart if done from the viewer.
2012-11-28 03:40:52 +00:00
Justin Clark-Casey (justincc)
a4007cbe71
Add regression test for checking scene close when SceneManager is asked to close
2012-11-28 03:39:31 +00:00
Justin Clark-Casey (justincc)
d70e0b1189
Add "help all" console command which will list all commands alphabetically in a single list
2012-11-28 03:39:20 +00:00
Justin Clark-Casey (justincc)
a9ce40a722
Factor out command script code.
...
This also allows comments in command scripts (lines starting with ;, # or //) to be used across all servers
2012-11-28 03:39:05 +00:00
Justin Clark-Casey (justincc)
8d207fd8e6
Make "config show/set/get/save" console commands available on all servers
2012-11-28 03:38:41 +00:00
Justin Clark-Casey (justincc)
2487adf0b1
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-28 03:28:27 +00:00
Justin Clark-Casey (justincc)
4aa725f60b
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-28 03:28:19 +00:00
Justin Clark-Casey (justincc)
0686a2fba9
Remove unused BaseOpenSimServer.ShowHelp()
2012-11-28 03:28:13 +00:00
Justin Clark-Casey (justincc)
b6305011db
Make "set log level" command available across all servers
2012-11-28 03:28:06 +00:00
Justin Clark-Casey (justincc)
9cdf5199df
Make "show info" command available across all servers
...
This helpfully lists version information, startup location and console log level
2012-11-28 03:27:59 +00:00
Justin Clark-Casey (justincc)
632dad337b
Factor out common registration of "show uptime" command
2012-11-28 03:27:52 +00:00
Justin Clark-Casey (justincc)
08234d0097
factor out common HandleShow code for "show uptime"
2012-11-28 03:27:43 +00:00
Justin Clark-Casey (justincc)
d68ba391fc
refactor: Factor out copy/pasted server uptime report code
2012-11-28 03:27:36 +00:00
Justin Clark-Casey (justincc)
603a140eb7
If an asset POST does not contain well-formed XML, return a 400 (Bad Request) HTTP status rather than simply dropping the request.
2012-11-28 03:27:30 +00:00