[Opensim-users] Out of Memory Exception on IAR Save?

Justin Clark-Casey jjustincc at googlemail.com
Tue Nov 30 04:35:14 UTC 2010


On 27/11/10 04:19, Chris wrote:
> Built on the latest code for 0.6.9 and tried an IAR save... It reported back a few random objects in my inventory that I
> managed to find using the search by UUID feature in the viewer I'm using. What puzzles me is I have these objects rezzed
> out in my regions and saving an OAR of these regions with those objects works perfectly fine. For instance, one of the
> said object UUID's refers to a house that I built a while back (OS 0.6.7 I believe). Nothing big I don't think lol or
> fancy; 136 prims and not using any textures larger than 1024x1024 (I don't know if it's possible to use textures larger
> than this anyway) and never had a problem including this object in the IAR up until recently.
>
> I've also transferred the offending objects to a newly created avatar and tried saving an IAR off that avatar and it had
> no problem. So I am not sure if it's a matter of an insanely huge asset that is holding it up... However, when I do
> manage to sucessfully save the IAR, the resulting file is around 800-ish megs. Is it possible that the av's inventory is
> just too large in general? Or perhaps, relating to a question I asked a little while back, could deeply nested folders
> (or just too many folders) be the culprit?
>
> i.e. My Inventory
> Folder 1
> Folder 2
> Folder 3
> Folder 4
> etc.

800 mb is a massive size for an IAR so I suspect that it's simply your huge inventory that's causing the problem.  Even 
very deep nests of directories shouldn't be an issue.

You might want to try untarring the IAR (it's an ordinary tar.gz) and seeing if there's any one particular asset which 
is surprisingly big.

>
>
>
> On 11/26/2010 7:42 PM, Chris wrote:
>> Alright, will do that. Thank you!
>> I posted a mantis on this http://opensimulator.org/mantis/view.php?id=5238
>>
>> Will report on my findings soon =)
>>
>> On 11/26/2010 6:57 PM, Justin Clark-Casey wrote:
>>> It looks like OpenSim is somehow running out of memory during a search and replace operation. I should think that the
>>> same problem would exist on 0.7.0.2 and master.
>>>
>>> The only thing I can think of is that one of your assets is absolutely huge, much bigger than could be reasonably
>>> expected.
>>>
>>> I patched 0.6.9-post-fixes (and master, 0.7-post-fixes) to log on the console which asset causes the problem. If you
>>> can build 0.6.9-post-fixes from source then I suggest that you try this and then look in the database to see if
>>> there's anything unusual about that asset (e.g. if it's very very large).
>>>
>>> Otherwise, I'm afraid you will have to wait until 0.7.1 is released before you can get this information.
>>>
>>> On 25/11/10 05:29, Chris wrote:
>>>> That is odd because I'm not actually running OpenSim from any directory with "New Folder" in it... This is the path I'm
>>>> running from: C:\Documents and Settings\Chris\Desktop\OpenSim\OS 069 Post Fixes\bin
>>>>
>>>> This is OpenSim 0.6.9 Post-Fixes I am using; Since the latest stable is 0.7.0.2 should I still file a Mantis report on
>>>> it? Thank you! =)
>>>>
>>>> On 11/24/2010 5:33 PM, Justin Clark-Casey wrote:
>>>>> On 23/11/10 23:49, Chris wrote:
>>>>>> Hi all. I've recently been getting 'System.OutOfMemoryException' errors when I attempt to save my avatar's entire
>>>>>> inventory with the Inventory Archiver. It will go through the usual process of finding the directories to archive and
>>>>>> after it finds so many it will give me that exception and then terminate the IAR job (usually before it ever
>>>>>> reaches the
>>>>>> assets stage). I usually have to restart the server several times (and try to save an IAR each time) in order to
>>>>>> get it
>>>>>> to save the IAR successfully.
>>>>>>
>>>>>> I have checked to make sure that I am not running out of RAM (still have ~1.5 gigs free while every thing is up and
>>>>>> running and IAR is being saved) or Virtual Memory/Page File when I attempt this and I have plenty of HD space
>>>>>> where I am
>>>>>> saving the IAR so I am at a loss as to why this is happening all of a sudden. I did notice something strange in the
>>>>>> exception message that I received and that is the fact that it seems to be trying to access "New Folder" on my
>>>>>> desktop
>>>>>> when there isn't a directory on my desktop called "New Folder" and I didn't direct it to save to New Folder either
>>>>>> (I am
>>>>>> saving to C:\inventory.iar btw)
>>>>>
>>>>> This is strange. Could you open a Mantis bug report and put this information there, along with the exact version
>>>>> number or Git revision of OpenSim that you're using.
>>>>>
>>>>> From the stack trace, you're running OpenSim from the path
>>>>>
>>>>> "c:\Documents and Settings\Chris\Desktop\New Folder"
>>>>>
>>>>> which I imagine is where "New Folder" is coming from.
>>>>>
>>>>>>
>>>>>> Any suggestions or insight would be much appreciated =)
>>>>>>
>>>>>> Exception:
>>>>>> 2010-11-23 00:13:27,406 ERROR - OpenSim.Application Command error: System.OutOfMemoryException: Exception
>>>>>>
>>>>>> of type 'System.OutOfMemoryException' was thrown.
>>>>>> at System.String.Replace(String oldValue, String newValue)
>>>>>> at OpenSim.Region.Framework.Scenes.Serialization.SceneObjectSerializer.FromOriginalXmlFormat(UUID
>>>>>>
>>>>>> fromUserInventoryItemID, String xmlData) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\Framework\Scenes\Serialization\SceneObjectSerializer.cs:line 69
>>>>>> at OpenSim.Region.Framework.Scenes.Serialization.SceneObjectSerializer.FromOriginalXmlFormat(String
>>>>>>
>>>>>> serialization) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\Framework\Scenes\Serialization\SceneObjectSerializer.cs:line 55
>>>>>> at OpenSim.Region.Framework.Scenes.UuidGatherer.GetSceneObjectAssetUuids(UUID sceneObjectUuid,
>>>>>>
>>>>>> IDictionary`2 assetUuids) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\Framework\Scenes\UuidGatherer.cs:line 280
>>>>>> at OpenSim.Region.Framework.Scenes.UuidGatherer.GatherAssetUuids(UUID assetUuid, AssetType assetType,
>>>>>>
>>>>>> IDictionary`2 assetUuids) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\Framework\Scenes\UuidGatherer.cs:line 105
>>>>>> at
>>>>>>
>>>>>> OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiveWriteRequest.SaveInvItem(InventoryIt
>>>>>>
>>>>>> emBase inventoryItem, String path) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiveWriteRequest.cs:line 156
>>>>>> at
>>>>>>
>>>>>> OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiveWriteRequest.SaveInvFolder(Inventory
>>>>>>
>>>>>> FolderBase inventoryFolder, String path, Boolean saveThisFolderItself) in c:\Documents and
>>>>>>
>>>>>> Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiveWriteRequest.cs:line 207
>>>>>> at
>>>>>>
>>>>>> OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiveWriteRequest.SaveInvFolder(Inventory
>>>>>>
>>>>>> FolderBase inventoryFolder, String path, Boolean saveThisFolderItself) in c:\Documents and
>>>>>>
>>>>>> Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiveWriteRequest.cs:line 202
>>>>>> at
>>>>>>
>>>>>> OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiveWriteRequest.SaveInvFolder(Inventory
>>>>>>
>>>>>> FolderBase inventoryFolder, String path, Boolean saveThisFolderItself) in c:\Documents and
>>>>>>
>>>>>> Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiveWriteRequest.cs:line 202
>>>>>> at OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiveWriteRequest.Execute() in
>>>>>>
>>>>>> c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiveWriteRequest.cs:line 303
>>>>>> at OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiverModule.ArchiveInventory(Guid
>>>>>>
>>>>>> id, String firstName, String lastName, String invPath, String pass, String savePath) in c:\Documents and
>>>>>>
>>>>>> Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiverModule.cs:line 174
>>>>>> at
>>>>>>
>>>>>> OpenSim.Region.CoreModules.Avatar.Inventory.Archiver.InventoryArchiverModule.HandleSaveInvConsoleCommand(
>>>>>>
>>>>>> String module, String[] cmdparams) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\CoreModules\Avatar\Inventory\Archiver\InventoryArchiverModule.cs:line 341
>>>>>> at OpenSim.Framework.Console.Commands.Resolve(String[] cmd) in c:\Documents and
>>>>>>
>>>>>> Settings\Chris\Desktop\New Folder\OpenSim\Framework\Console\CommandConsole.cs:line 364
>>>>>> at OpenSim.Framework.Console.LocalConsole.ReadLine(String p, Boolean isCommand, Boolean e) in
>>>>>>
>>>>>> c:\Documents and Settings\Chris\Desktop\New Folder\OpenSim\Framework\Console\LocalConsole.cs:line 473
>>>>>> at OpenSim.Framework.Console.CommandConsole.Prompt() in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Framework\Console\CommandConsole.cs:line 583
>>>>>> at OpenSim.Application.Main(String[] args) in c:\Documents and Settings\Chris\Desktop\New
>>>>>>
>>>>>> Folder\OpenSim\Region\Application\Application.cs:line 165
>>>>>> _______________________________________________
>>>>>> Opensim-users mailing list
>>>>>> Opensim-users at lists.berlios.de
>>>>>> https://lists.berlios.de/mailman/listinfo/opensim-users
>>>>>>
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Opensim-users mailing list
>>>> Opensim-users at lists.berlios.de
>>>> https://lists.berlios.de/mailman/listinfo/opensim-users
>>>>
>>>
>>>
>>
>> _______________________________________________
>> Opensim-users mailing list
>> Opensim-users at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-users
>>
>
> _______________________________________________
> Opensim-users mailing list
> Opensim-users at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-users
>


-- 
Justin Clark-Casey (justincc)
http://justincc.org
http://twitter.com/justincc



More information about the Opensim-users mailing list