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
BlueWall
6d3ee8bb39
Fix script "Running" behavior
...
Unchecking "Running" box in script editor now persists. This fixes http://opensimulator.org/mantis/view.php?id=6057
2012-06-23 04:15:14 -04:00
Justin Clark-Casey (justincc)
80a41e670d
Avoid race condition between m_PrimObjects iteration in XEngine.PostObjectEvent and places where the list is modified by extending the m_PrimObjects lock.
2012-06-22 02:23:25 +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
Justin Clark-Casey (justincc)
f907182ab2
Eliminate unnecessary extra call to TriggerEmptyScriptCompileQueue in XEngine.DoOnRezScriptQueue()
...
The later invocation of this function will happen on an empty compile queue.
2012-06-22 01:57:14 +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)
625e5e913a
Comment out recently added log message detailing number of scripts started when compile queue empties for now
2012-06-20 00:25:18 +01:00
Justin Clark-Casey (justincc)
881e92a726
Raise some IO associated Exception logging in XEngine to error level, in line with other similar cases.
...
Remove more unnecessary Close() calls - these are being triggered by the Dispose() called when exiting the using statement for these sdk io objects.
2012-06-20 00:19:50 +01:00
Justin Clark-Casey (justincc)
0fa303b1cf
Log how many scripts are candidates for starting and how many are actually started.
...
Adds DebugLevel infrastructure to XEngine though currently commented out and unused.
2012-06-20 00:10:19 +01:00
Justin Clark-Casey (justincc)
ef686ead37
Like the assembly and text files, only write the c#-lsl linemap in XEngine.SetXMLState() if the trust binaries flag is set.
...
This doesn't affect other locations where the map is written, such as on script compilation.
2012-06-19 02:11:46 +01:00
Justin Clark-Casey (justincc)
8e7032ece8
minor: Add a little more detail to IOException logging in XEngine.SetXMLState()
...
Also removes superflous Close() commands for statements taking place within using() constructs
Also adds some comment out debug log messages for future use.
2012-06-19 01:53:50 +01:00
Melanie
def65cd94a
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs
2012-04-25 01:22:09 +01:00
Oren Hurvitz
2f398231ac
Minor improvements to logging
...
Eliminated an extra newline in the console if the log line doesn't contain a category (example of a category: "[ASSETS]").
2012-04-24 21:38:09 +01:00
Melanie
beb7b8d189
Fix a logic error in app domain creation
2012-04-18 23:23:37 +01:00
Melanie
525b7593e8
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-04-18 20:09:52 +01:00
Melanie
ea73a03553
Don't re-add the assembly resolver for each script if not creating the appdomain
2012-04-18 20:01:41 +01:00
Melanie
fe65b51876
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
2012-04-13 03:00:48 +01:00
Talun
08e509978d
Mantis 55025 Implement script time.
...
Signed-off-by: nebadon <michael@osgrid.org >
2012-04-12 18:44:00 -07:00
Melanie
5768a151ff
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Data/MySQL/MySQLXAssetData.cs
2012-03-20 02:48:11 +00:00
Justin Clark-Casey (justincc)
437f18bc41
Stop console command "xengine status" throwing an exception if there are no scripts in a region.
...
Addresses http://opensimulator.org/mantis/view.php?id=5940
2012-03-19 21:43:23 +00: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)
9497a7c7bd
refactor: separate out console and status report generation parts of XEngine
2012-03-16 03:32:14 +00:00
Justin Clark-Casey (justincc)
c386b68373
Aggregate script execution times by linksets rather than individual prims.
...
This is for the top scripts report.
2012-03-16 01:31:53 +00:00
Justin Clark-Casey (justincc)
a4b01ef38a
Replace script-lines-per-second with the script execution time scaled by its measurement period and an idealised frame time.
...
The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute.
Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100.
The actual measurement value should be script execution time per frame but XEngine does not work this way.
Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time.
This is still not ideal but gives reasonable results and allows scripts to be compared.
This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
2012-03-16 00:34:30 +00:00
Melanie
897dc5e77e
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/Scene.cs
OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-03-15 10:55:44 +00:00
Justin Clark-Casey (justincc)
2f81e53f63
Fix a problem where multiple near simultaneous calls to llDie() from multiple scripts in the same linkset can cause unnecessary thread aborts.
...
The first llDie() could lock Scene.m_deleting_scene_object.
The second llDie() would then wait at this lock.
The first llDie() would go on to remove the second script but always abort it since the second script's WorkItem would not go away.
Easiest solution here is to remove the m_deleting_scene_object since it's no longer justified - we no longer lock m_parts but take a copy instead.
This also requires an adjustment in XEngine.OnRemoveScript not to use instance.ObjectID instead when firing the OnObjectRemoved event.
2012-03-15 00:20:47 +00:00
Justin Clark-Casey (justincc)
12cebb12d5
Alleviate an issue where calling Thread.Abort() on script WorkItems can fail to release locks, resulting in a crippled simulator.
...
This seems to be a particular problem with ReaderWriterLockSlim, though other locks can be affected as well.
It has been seen to happen when llDie() is called in a linkset running more than one script.
Alleviation here means supplying a ScriptInstance.Stop() timeout of 1000ms rather than 0ms, to give events a chance to complete.
Also, we check the IsRunning status at the top of the ScriptInstance.EventProcessor() so that another event doesn't start in the mean time.
Ultimately, a better solution may have to be found since a long-running event would still exceed the timeout and be aborted.
2012-03-15 00:06:52 +00:00
Melanie
c0f70d17fc
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-03-14 11:33:51 +00:00
Justin Clark-Casey (justincc)
95ec96bf86
refactor: rename ScriptInstance.m_CurrentResult to m_CurrentWorkItem to make it more understandable as to what it is and what it does (hold a thread pool work item for a waiting of in-progress event)
...
Also add other various illustrative comments
2012-03-14 00:29:36 +00:00
Justin Clark-Casey (justincc)
25592bbd85
Add max thread and min thread information to "xengine status" region console command
2012-03-12 21:16:05 +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
caa19862fa
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/Scene.cs
2012-03-07 00:51:59 +00:00
Justin Clark-Casey (justincc)
98251cdab3
Add sensor, dataserver requests, timer and listener counts to "xengine status" command.
...
This is for diagnostic purposes.
2012-03-06 23:21:17 +00:00
Melanie
37049180f6
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-02-07 21:09:04 +00:00
Justin Clark-Casey (justincc)
038d1bf742
Add a regression test to compile and start a script. Remove Path.GetDirectoryName when getting assembly loading path in Compiler.CompileFromDotNetText().
...
The Path.GetDirectoryName call in Compiler.CompileFromDotNetText is unnecessary since AppDomain.CurrentDomain.BaseDirectory is always a directory.
Later path concatenation is already done by Path.Combine() which handles any trailing slash.
Removing Path.GetDirectoryName() will not affect the runtime but allows NUnit to work since it doesn't add a trailing slash to AppDomain.CurrentDomain.BaseDirectory.
2012-02-07 17:44:37 +00:00
Melanie
16aa00e944
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2012-02-01 10:08:45 +00:00
Justin Clark-Casey (justincc)
99e71222f0
Lay out script status in property per row format, since getting too long for console lines.
2012-02-01 00:27:42 +00:00
Justin Clark-Casey (justincc)
e3680f216e
Add count of events queued for a particular script in "scripts show" console command
2012-02-01 00:17:02 +00:00
Justin Clark-Casey (justincc)
8b3da1bff4
Make script console commands only show for selected region.
2012-02-01 00:10:07 +00:00
Justin Clark-Casey (justincc)
437de6743c
Implement "xengine status" console command to show various xengine stats
2012-02-01 00:07:06 +00:00
Melanie
43128c9016
Merge branch 'master' into careminster
...
Conflicts:
OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2012-01-14 06:09:19 +00:00
Justin Clark-Casey (justincc)
82f0e19349
Extend scripts show command to accept a single item UUID parameter to display one script's status
...
Usage is now scripts show [<script-item-uuid>]
2012-01-14 00:44:19 +00:00
Melanie
bdb5ac96d9
Merge branch 'master' into bigmerge
...
Conflicts:
OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2011-11-19 22:39:15 +00:00
Justin Clark-Casey (justincc)
cacc028835
If the entire simulator is shutting down then don't bother to unload the scripts from the appdomain in XEngine.
...
All the other actions (script state save, etc.) still occur.
This makes shutdown where there are many scripts vastly quicker.
2011-11-17 21:03:08 +00:00
Melanie
b975cbcbed
Merge branch 'master' into bigmerge
...
Conflicts:
OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
OpenSim/Region/CoreModules/Avatar/InstantMessage/MessageTransferModule.cs
OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs
OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
2011-10-27 18:14:38 +01:00
Justin Clark-Casey (justincc)
40bee97015
For now, comment out error message on new script engine console commands.
...
This causes false positives if a simulator has more than 1 region and the current region is 'root' since this sends the command separately to each region and each region has its own XEngine
2011-10-27 03:01:27 +01:00
Melanie
635b1bf18e
Merge commit '601dabb1b73a894e4f2f61abe6e9053d380008cd' into bigmerge
2011-10-25 03:16:40 +01:00
Melanie
85d40ce1d1
Merge commit '5607fd3af828846291de3358067bb1214619489e' into bigmerge
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2011-10-25 03:16:26 +01:00
Melanie
df430d572d
Merge commit '3cf7fb4eca2ad57835311e8098868f2571709392' into bigmerge
...
Conflicts:
OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2011-10-25 03:10:54 +01:00