| Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
continue to generate C# that is functionality identical to historical generation
This is to eliminate disruption until co-op termination has been well-tested.
In non co-op mode, XEngine will continue to load DLLs of the existing Script class and the new XEngineScript class.
Moving to co-op mode still requires existing script DLL deletion to force recompilation, either manually or by setting DeleteScriptsOnStartup = true for one run.
This change also means that scripts which fail to initialize do not still show up as running scripts.
|
|
BulletSPlugin using the BulletXNA Bullet physics engine. It also updates the BulletXNA library to be compatible with the changes. OpenSimDefaults has been updated to describe how to switch engines and terrain implementations.
|
|
|
|
addition to termination on wait.
This involves inserting opensim_reserved_CheckForCoopTermination() calls in lsl -> c# translation at any place where the script could be in a loop with no wait calls.
These places are for, while, do-while, label, user function call and manual event function call.
Call goes through to an XEngineScriptBase which extends ScriptBase.
IEngine is extended to supply necessary engine-specific parent class references and constructor parameters to Compiler.
Unfortunately, since XEngineScriptBase has to be passed WaitHandle in its constructor, older compiled scripts will fail to load with an error on the OpenSim console.
Such scripts will need to be recompiled, either by removing all *.dll files from the bin/ScriptEngines/<region-id> or by setting DeleteScriptsOnStartup = true in [XEngine] for one run.
Automatic recompilation may be implemented in a later commit.
This feature should not yet be used, default remains termination with Thread.Abort() which will work as normal once scripts are recompiled.
|
|
script wait event (llSleep(), etc.)
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
This commit, unlike 1b5c41c, passes the wait handle as an extra parameter through IScript.Initialize() instead of passing IScriptInstance itself.
|
|
during a script wait event (llSleep(), etc.)"
Doing this as a favour to Melanie. This will be back with passing the wait handles directly to the api.
This reverts commit 1b5c41c14ad11325be249ea1cce3c65d4d6a89be.
|
|
script wait event (llSleep(), etc.)
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
|
|
pass down IScriptInstance instead.
This is to allow the future co-operative script thread terminate feature to detect and act upon termination requests.
This splits the assembly and state loading out from the ScriptInstance() constructor to a separate Load() method
in order to facilititate continued script logic regression testing.
|
|
BulletSim core to using the BulletSimAPITemplate. Physical object creation and destruction first.
|
|
of BulletSim. This is designed to be /as close as possible/ to the BulletSim plugin while still being entirely in the managed space to make keeping it up to date easy as possible (no thinking work). This implementation is /slower/ then the c++ version just because it's fully managed, so it's not appropriate for huge sims, but it will run small ones OK. At the moment, it supports all known features of BulletSim. Think of it like.. POS but everything works. To use this plugin, set the physics plugin to BulletSimN.
|
|
needed one more "../" in the path (copy paste): Thanks BrucePatton for catching that one
|
|
Had moved the class to a different namespace but failed to add the reference
|
|
and UserStatistics.
Should address http://opensimulator.org/mantis/view.php?id=6444
Appears that nant doesn't need these paths but building directly in monodevelop does.
|
|
automatically turns off any logging enabled between tests
|
|
parcel owner ID to the estate owner even if the group UUID was present.
Aims to address http://opensimulator.org/mantis/view.php?id=6355
As part of this work, an incomplete IXGroupsData was added which currently only allows store/fetch/delete of group records
(i.e. no membership data etc)
This is subject to change and currently only an in-memory storage implementation exists for regression test purposes.
|
|
Add missing OpenSim.Framework.Servers reference
|
|
This helpfully lists version information, startup location and console log level
|
|
Adds new OpenSim.Server.Handlers.Tests.dll to test suite
|
|
|
|
|
|
Move PluginManager out to OpenSimFramework for general use
|
|
Properly resolve circular reference which no longer appeared in Mono build as there were no using statements for it.
|
|
the build order.
Luckily, it turns out Framework.Monitoring doesn't need to reference Console directly.
|
|
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.
|
|
|
|
This is working - more testing to follow, then soem documentation
|
|
packet directly) to reference OpenSim.Region.ClientStack.LindenUDP.
This time I actually properly did a clean build
|
|
temporary assets.
Make AssetServiceConnector return more useful data on failure, such as what DLL it was trying to load
Allow LocalAssetServiceConnector.GetData() to work without a cache present, as works for the other lasc Get* methods.
|
|
This reverts commit 96f889b20e570a05fdb7c4f42057cc66671a60cb.
|
|
Mono.Data.SQL entry was bad
|
|
Add reference to fix Windows build: no windows here to test, please report any issues back to IRC #opensim-dev ASAP
|
|
better matches what they really do.
nant target name changes to test-perf instead of torture, to match test-stress
still not run by default
|
|
generates thousands of vector textures concurrently.
Intended for use if there are future issues with mono crashes whilst generate dynamic textures.
This test is triggered via a new test-stress nant target.
Not run by default.
|
|
race condition checks.
This is to allow a second attempt to remove an avatar even if "show connections" shows them as already inactive (i.e. close has already been attempted once).
You should only attempt --force if a normal kick fails.
This is partly for diagnostics as we have seen some connections occasionally remain on lbsa plaza even if they are registered as inactive.
This is not a permanent solution and may not work anyway - the ultimate solution is to stop this problem from happening in the first place.
|
|
|
|
with other monitoring code from OpenSim.Framework
|
|
This better reflects the long-term purpose of that project and matches Monitoring modules.
|
|
region console "show stats" command
This aims to capture the amount of memory that OpenSim turns over whilst operating a region.
This memory is not lost - apart from leaks it is reclaimed by the garbage collector.
However, the more memory that gets turned over the more work the GC has to do to reclaim it.
|
|
before BulletSim is
|
|
|
|
simple, high performance logger for high frequency logging (physics sub-operations, for instance).
|
|
prebuild.xml for OpenSim.Region.CoreModules.Tests.dll
|
|
This currently only does a relatively crude check for a ScriptState node in the serialized xml
|
|
avatars rather than throwing an exception.
Extends sitting avatar regression tests to test new sitters information
|
|
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 missing reference to System.Core
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
|
|
adding a reference to a dll requires 'path="..."'
|
|
DotNetZip provides much better compression than standard .NET.
|