Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0008675opensim[REGION] OpenSim Corepublic2020-03-19 09:152020-07-10 03:17
Reportermewtwo0641 
Assigned Tomewtwo0641 
PrioritynormalSeverityminorReproducibilitysometimes
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Versionmaster (dev code) 
Summary0008675: Floatsam Cache - Failed to expire cached file (uuid)
DescriptionAs of master, whenever I start up OS, I get a flood of warnings in the console about failing to expire cached files. I am unsure what is triggering this at the moment but it causes a lot of spam in the console and causes momentary slowdown of the simulator until it stops.

I have tried deleting the assetscache directory to see if the warnings would go away, but they do not.

The warnings are many of messages like this:

2020-03-19 11:08:52,676 WARN [FLOTSAM ASSET CACHE]: Failed to expire cached file f3b2fec9-3c76-602e-ad8d-51e73b5cac70. Exception Could not find a part of the path 'D:\opensim\bin\assetcache\f3b\f3b2fec9-3c76-602e-ad8d-51e73b5cac70'. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.File.InternalDelete(String path, Boolean checkHost)
   at OpenSim.Region.CoreModules.Asset.FlotsamAssetCache.Expire(String id) in D:\opensim\OpenSim\Region\CoreModules\Asset\FlotsamAssetCache.cs:line 596
Steps To Reproduce// Script used to trigger issue; put it in any new prim and touch it

string diffuse = TEXTURE_BLANK;
string normal = TEXTURE_DEFAULT;
string specular = TEXTURE_BLANK;

ApplyMats()
{
    //This simulates applying materials to a "fresh" object
    //by clearing the object of all materials. This will
    //trigger the flotsam cache console spam after applying
    //materials again. If ResetMats() is commented out then
    //subsequent application of materials will not trigger
    //the console spam.
    ResetMats();

    llSetLinkPrimitiveParamsFast(LINK_SET,
    [
        PRIM_TEXTURE,
            ALL_SIDES, diffuse, <1,1,0>, <0,0,0>, 0.0,

        PRIM_NORMAL,
            ALL_SIDES, normal, <1,1,0>, <0,0,0>, 0.0,
            
        PRIM_SPECULAR,
            ALL_SIDES, specular, <1,1,0>, <0,0,0>, 0.0,
            <1,1,1>, 128, 32
    ]);
}

ResetMats()
{
    llSetLinkPrimitiveParamsFast(LINK_SET,
    [
        PRIM_COLOR, ALL_SIDES, <1,1,1>, 1.0,
        PRIM_FULLBRIGHT, ALL_SIDES, FALSE,
        PRIM_GLOW, ALL_SIDES, 0.0,
        PRIM_TEXTURE, ALL_SIDES, TEXTURE_BLANK, <1,1,0>, <0,0,0>, 0.0,
        
        PRIM_NORMAL, ALL_SIDES, NULL_KEY, <1,1,0>, <0,0,0>, 0.0,
        PRIM_SPECULAR, ALL_SIDES, NULL_KEY, <1,1,0>, <0,0,0>, 0.0, <1,1,1>, 0, 0,
        PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0
    ]);
}

default
{
    state_entry()
    {
        ApplyMats();
    }
    
    touch_start(integer num)
    {
        ApplyMats();
    }
}
TagsNo tags attached.
Git Revision or version number
Run Mode Grid (Multiple Regions per Sim)
Physics EngineubODE
Script EngineYEngine
Environment.NET / Windows64
Mono VersionNone
Viewer
Attached Filespatch file icon 0001-Don-t-spam-the-console-with-warnings-in-FlotsamAsset.patch [^] (1,408 bytes) 2020-03-25 07:49 [Show Content]

- Relationships

-  Notes
(0036295)
UbitUmarov (administrator)
2020-03-19 09:27

ugly "noise"
at startup code tries to delete some assets known to be obsolete ( like the map image asset for V1 viewers), and on ocasion they are not on cache.
it happens the delete uses a full path per file, and part of that path (sub folder) is from the asset id also, while delete will not complain if the file is not there, it will complain if its folder is not there, so the error..
(0036298)
mewtwo0641 (reporter)
2020-03-19 20:57

I was actually able to figure out what is triggering this issue. I wrote a small script to demonstrate it which has been attached to this mantis. I have not seen this particular issue until very recently on master.

If it was just console spam I would just ignore it, but it causes some significant slowdown to scripted materials application every time it starts spamming the console; where previously before this issue came up it was fine.
(0036300)
tampa (reporter)
2020-03-23 16:00

I think I ran into something similar today, ended up exhausting the ulimits and getting too many open files console spam until the simulator crashed. There is some potential in there for runaway behavior trying to constantly recover from a failed state without adding some delay.
(0036301)
aiaustin (developer)
2020-03-25 05:10
edited on: 2020-03-25 05:11

I am seeing a lot of these “Failed to expire cached file” warnings too in recent dev master.

(0036302)
mewtwo0641 (reporter)
2020-03-25 07:49

I added a patch to silence the warnings unless debug level is >= 2. It doesn't address whatever the underlying cause may be; but it does keep it from spamming the console out of existence.
(0036306)
aiaustin (developer)
2020-03-29 07:25
edited on: 2020-04-03 06:32

I am also seeing masses of messages of this form.. which may or may not be related... note gap with no content also between "job from" and "in FlotsamWriter"...

15:22:47 - [FlotsamWriter]: Job queue at maximum capacity, not recording job from in FlotsamWriter
15:22:47 - [FlotsamWriter]: Job queue at maximum capacity, not recording job from in FlotsamWriter

(0036582)
aiaustin (developer)
2020-07-08 04:39

The "[FLOTSAM ASSET CACHE]: Failed to expire cached file" warning appears to be fixed with the 0.9.2.0 dev master commit as at 2020-07-07. Run the OpenSim.exe once, quit and restart and these messages for each region appear to have gone.
(0036583)
mewtwo0641 (reporter)
2020-07-08 22:09

I still see this on latest master; But I suspect that it has to do with editing materials. I notice that every time I set a normal or specular map material to "none" either through the viewer editor or by script, I then eventually see a flood of the "Failed to expire cached file" warnings. As long as I'm not editing materials, it seems to be fine.
(0036584)
aiaustin (developer)
2020-07-09 01:21
edited on: 2020-07-09 08:32

Right, as you say, what you are still seeing will be a separate underlying cause to the effect I was seeing which was that two (always and exactly two) such warnings per region on each OpenSim.exe startup, Those warnings have now stopped with the 2020-07-07 commit in dev master.

(0036585)
UbitUmarov (administrator)
2020-07-09 08:35

Ok applied the patch by hand.
Thanks
(0036590)
mewtwo0641 (reporter)
2020-07-10 03:16

No problem! That seemed to do the trick in master 7-9-20. Thank you :)

- Issue History
Date Modified Username Field Change
2020-03-19 09:15 mewtwo0641 New Issue
2020-03-19 09:27 UbitUmarov Note Added: 0036295
2020-03-19 20:55 mewtwo0641 Steps to Reproduce Updated View Revisions
2020-03-19 20:57 mewtwo0641 Note Added: 0036298
2020-03-23 16:00 tampa Note Added: 0036300
2020-03-25 05:10 aiaustin Note Added: 0036301
2020-03-25 05:11 aiaustin Note Edited: 0036301 View Revisions
2020-03-25 07:49 mewtwo0641 File Added: 0001-Don-t-spam-the-console-with-warnings-in-FlotsamAsset.patch
2020-03-25 07:49 mewtwo0641 Note Added: 0036302
2020-03-29 07:25 aiaustin Note Added: 0036306
2020-04-03 06:32 aiaustin Note Edited: 0036306 View Revisions
2020-07-08 04:39 aiaustin Note Added: 0036582
2020-07-08 22:09 mewtwo0641 Note Added: 0036583
2020-07-09 01:21 aiaustin Note Added: 0036584
2020-07-09 08:32 aiaustin Note Edited: 0036584 View Revisions
2020-07-09 08:35 UbitUmarov Note Added: 0036585
2020-07-10 03:16 mewtwo0641 Note Added: 0036590
2020-07-10 03:17 mewtwo0641 Status new => resolved
2020-07-10 03:17 mewtwo0641 Fixed in Version => master (dev code)
2020-07-10 03:17 mewtwo0641 Resolution open => fixed
2020-07-10 03:17 mewtwo0641 Assigned To => mewtwo0641


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker