Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0005239opensim[REGION] Scripting Enginepublic2010-11-27 12:142010-12-14 07:44
Reporterebremer 
Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
StatusnewResolutionopen 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
Summary0005239: Scripting Engine Errors when trying to rez numerous scripted objects
DescriptionI'm trying to rez multiple copies of a scripted object via multiple source rezzing objects, but, when executed gives multiple script errors for most of the rezz'd objects. The scenario is this: Rezzer object A1 (and it's clones A2, A3, A4, A5, etc) contain a scripted object B that contains a script which listens on channel 2 for a command to die (cleanup). Rezzer objects A1-A(n) are triggered by a listening on channel 1, they all start to rez 100 copies of object B (contained in their own inventories), some succeed in creating the 100 copies of B, but most crash with the attached error. Everything works if object B is just a non-scripted object, but fails with the attached error when the script is added to B. As it is, even when running 16 copies of A (in the non-scripted B scenario) it seems that only eight of the copies run at a time, when they complete, the next 8 run. Any suggestions for clearing up the error in the scripted B and/or non-scripted B scenario would be appreciated.

Running on Windows 7 Professional 64-bit (in 32-bit mode for Opensimulator using latest Diva Distro)
Additional InformationMyRezzer: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.IO.IOException: The process cannot access the file 'D:\opensim\bin\ScriptEngines\a827a600-5f64-4442-81e4-168d90c5e249\CommonCompiler_compiled_7ebc15ec-eb4d-4bba-b87e-f369e3bbfc06.dll.map' because it is being used by another process.



Server stack trace:

   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)

   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)

   at System.IO.File.Create(String path)

   at OpenSim.Region.ScriptEngine.XEngine.XEngine.SetXMLState(UUID itemID, String xml)

   at OpenSim.Region.Framework.Scenes.SceneObj
TagsNo tags attached.
Git Revision or version number13981
Run Mode Standalone (Multiple Regions)
Physics EngineBasicPhysics
Script Engine
Environment.NET / Windows64
Mono VersionNone
ViewerImprudence 1.4.0
Attached Files

- Relationships

-  Notes
(0017596)
Marck (reporter)
2010-12-14 07:44

I did some tests with commit 4bdba0a (r/14658) using the following scripts:

Scripted object:
default {
    state_entry() {
        llListen(2, "", NULL_KEY, "die");
    }
    listen(integer channel, string name, key id, string message) {
        llDie();
    }
}

Rezzer:
integer NUMBER = 100;
string object;
default {
    state_entry() {
        object = llGetInventoryName(INVENTORY_OBJECT, 0);
        llListen(1, "", NULL_KEY, "rez");
    }
    listen(integer channel, string name, key id, string message) {
        vector pos = llGetPos() + <0.0, 0.0, 1.0>;
        integer i;
        for (i = 0; i < NUMBER; ++i) {
            llRezObject(object, pos, ZERO_VECTOR, ZERO_ROTATION, 0);
            pos.z += 0.01;
        }
    }
}

With both Mono 2.8.1 under Linux and NET under Windows XP (32 bit) I do get a few errors like the following when I use 4 rezzer objects:

2010-12-14 15:49:27,051 ERROR - OpenSim.Region.ScriptEngine.XEngine.XEngine [XEngine]: File ScriptEngines/fcf356be-f2da-4329-b5ee-cacaef4deaa8/708e89ae-9fe8-4fed-9eae-1a2e769b3287.state already exists! Sharing violation on path /home/opensim/test-0.7/bin/ScriptEngines/fcf356be-f2da-4329-b5ee-cacaef4deaa8/CommonCompiler_compiled_ca46dfe3-6c98-4422-a1c6-5d0d7cf55bce.dll.map

However, the scripts work fine and all objects are rezzed. So either this was already fixed in the development master branch since release 0.7.0.2, or Windows does something different in version 7 (I doubt that the 64 bit play a role here). Could somebody please re-test with that Windows version and a recent OpenSim development version?

- Issue History
Date Modified Username Field Change
2010-11-27 12:14 ebremer New Issue
2010-11-27 12:14 ebremer Git Revision => 13981
2010-11-27 12:14 ebremer SVN Revision => 0
2010-11-27 12:14 ebremer Run Mode => Standalone (Multiple Regions)
2010-11-27 12:14 ebremer Physics Engine => BasicPhysics
2010-11-27 12:14 ebremer Environment => Mono / Windows
2010-11-27 12:14 ebremer Mono Version => None
2010-11-27 12:14 ebremer Viewer => Imprudence 1.4.0
2010-11-27 13:21 ebremer Environment Mono / Windows => .NET / Windows64
2010-12-14 07:44 Marck Note Added: 0017596


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker