Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003994opensim[REGION] OpenSim Corepublic2009-08-11 10:052010-06-30 13:05
Reporteraduffy70 
Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
StatusnewResolutionopen 
PlatformLinuxOSUbuntu serverOS Version8.10 32bit
Product Version 
Target VersionFixed in Version 
Summary0003994: Stack overflow and Dilation, SimFPS, PhyFPS drop to zero when rezzing/deleting many objects
DescriptionI have a "Rezzer" object that rezzes a "TempObject" every second on a timer. The TempObjects wait a few seconds for a timer and then delete themselves using llDie. After about an hour of rezzing/deleting I get an error:

Region (Control) # Stack overflow in unmanaged: IP: 0x81d0395, fault addr: 0xaa286ec8

The console messages stop and if you show stats, the Dilation, SimFPS, and PhyFPS have all dropped to zero.
Running more than one "Rezzer" at a time makes the error happen sooner (about 15 minutes with 4 of them). But when running 3 or more I also see repeated System.IO errors like those reported in http://opensimulator.org/mantis/view.php?id=3829. [^] When the FPS drop to zero, the normal XENGINE and REGIONDB messages stop, but these error messages continue.
 
Steps To ReproduceSet up objects to rez a prim every second. Have those prims delete themselves after a few seconds. Wait for the console messages to stop.
Additional InformationThis was not an issue on svn9395. It began when I switched from 9395 to 9961 and bb4b81d (svn10054?).
Using flotsam cache.
Tested in standalone and attached to a grid, using mono 2.4 & 2.4.2.3
TagsNo tags attached.
Git Revision or version numberbb4b81d70fece4e0257f1e2f36148906
Run ModeStandalone (1 Region)
Physics EngineODE
Script Engine
EnvironmentMono / Linux32
Mono Version2.4.2
Viewer
Attached Files

- Relationships

-  Notes
(0012932)
aduffy70 (reporter)
2009-08-18 08:07

Here is more info to narrow down the problem...
1) The stack overflow seems to happen after a specific number of objects have rezzed and deleted themselves. The magic number is about 3300. If you rez objects faster or using multiple Rezzers, you get the overflow sooner, but it is always after about 3300 objects have rezzed and deleted.
2) It seems to be related to the deleting of the objects. If I use the Rezzer to generate objects that do not delete themselves I do not get the overflow - even after 15000+ objects have been rezzed.
3) It only happens if the objects delete themselves using llDie. I made a region module that deletes the objects using Scene.DeleteSceneObject and I do not get the overflow.
(0014429)
aduffy70 (reporter)
2009-12-06 16:00

This looks like a mono-specific problem.
On mono systems, you can only use 11Die() about 3300 times before getting a stack overflow. On a windows XP system you can use llDie thousands of times without problems.
(0015818)
aduffy70 (reporter)
2010-06-30 13:05
edited on: 2010-06-30 13:05

This problem still exists on 0.7.1-dev with mono 2.6.1, but now instead of freezing the whole region, it just stops the script engine (all scripts stop and no new scripts will compile). The error message gives a bit more information as well:

13:54:58 - [EVENT MANAGER]: Delegate for TriggerRemoveScript failed - continuing. The requested operation caused a stack overflow. at (wrapper managed-to-native) object:__icall_wrapper_mono_object_new_fast (intptr)
  at OpenSim.Region.CoreModules.Scripting.LSLHttp.UrlModule.ObjectRemoved (UUID objectID) [0x00000] in <filename unknown>:0
at (wrapper delegate-invoke) OpenSim.Region.ScriptEngine.Interfaces.ObjectRemoved:invoke_void__this___UUID (OpenMetaverse.UUID)


- Issue History
Date Modified Username Field Change
2009-08-11 10:05 aduffy70 New Issue
2009-08-11 10:05 aduffy70 Git Revision => bb4b81d70fece4e0257f1e2f36148906
2009-08-11 10:05 aduffy70 SVN Revision => 9961, 10054
2009-08-11 10:05 aduffy70 Run Mode => Standalone (1 Region)
2009-08-11 10:05 aduffy70 Physics Engine => ODE
2009-08-11 10:05 aduffy70 Environment => Mono / Linux32
2009-08-11 10:05 aduffy70 Mono Version => 2.4.2
2009-08-18 08:07 aduffy70 Note Added: 0012932
2009-12-06 16:00 aduffy70 Note Added: 0014429
2010-06-30 13:05 aduffy70 Note Added: 0015818
2010-06-30 13:05 aduffy70 Note Edited: 0015818


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker