<div dir="ltr">Hi All,<div><br></div><div>    I've been experiencing image save slowdowns recently and finally my work image reached 1.%Gb and I thought I better take a look:</div><div><br></div><div><div>Sisyphus.Cog$ ls -lh SpurWork64.* save/SpurWork64-*</div><div>-rw-r--r--@ 1 eliot  staff    28M Jan 18 12:47 SpurWork64.changes</div><div>-rw-r--r--@ 1 eliot  staff   1.6G Jan 18 12:48 SpurWork64.image</div><div>-rw-r--r--@ 1 eliot  staff    28M Jan 18 12:03 save/SpurWork64-2018-01-18.changes</div><div>-rw-r--r--@ 1 eliot  staff   1.5G Jan 18 12:03 save/SpurWork64-2018-01-18.image</div><div><br></div><div>I ran a space analysis and found that Bitmap and ByteArray were the top two, so I looked for large Bitmaps.  I found three that fit this criterion:</div><div><br></div><div><div><br></div><div>    Bitmap allInstances select: [:bm| bm size >= 1000000 and: [bm ~~ Display bits]]</div></div><div><br></div><div>I inspected the three and did a chase pointers on one of them.  As I did that suddenly</div><div>a) the inspector on the Array became empty (still an array but zero elements)</div><div>b) the progress bar for Downloading FlexibleVocabularies-who.NN appeared</div><div><br></div><div>I interrupted this and did a very cursory stack examination. Some object had not understood isLiteral and from there what looked like an attempt to turn this stub into a real object caused FlexibleVocabularies-who.NN to start to download.</div><div><br></div><div>I threw away the debugger, ran the GC and suddenly all my free space was back.  So now on disc I have</div><div><br></div><div><div>Sisyphus.Cog$ ls -lh SpurWork64.* save/SpurWork64-*</div><div>-rw-r--r--@ 1 eliot  staff    28M Jan 18 15:17 SpurWork64.changes</div><div>-rw-r--r--@ 1 eliot  staff    57M Jan 18 15:17 SpurWork64.image</div><div>-rw-r--r--@ 1 eliot  staff    28M Jan 18 12:03 save/SpurWork64-2018-01-18.changes</div><div>-rw-r--r--@ 1 eliot  staff   1.5G Jan 18 12:03 save/SpurWork64-2018-01-18.image</div></div><div><br></div><div>What is going on here?  There seems to be a very bad storage leak.  Can we please discuss this?  This doesn't seem like healthy behaviour at all :-)</div><div><br></div><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>