Results 1 to 6 of 6

Thread: STSDB 4, File storage is not letting go of the object

  1. #1
    Junior Member
    Join Date
    Sep 2013
    Posts
    11

    Default STSDB 4, File storage is not letting go of the object

    Here is what I have
    File storage, Engine.CacheCapacity = 30
    key is int, Value is string

    Doing index.Flush() after every InsertOrIgnore();
    Doing engine.Commit() after every 1000th InsertOrIgnore() call;

    Application was using too much memory, Profiler suggested that

    WaterfallTree+LeafNode is keeping reference of KeyValuePair<IData, IData>[] array which is keeping all references of Data<string> instances.

    Why is that ?

  2. #2

    Default

    Try to decrease the cache capacity property. The engine.CacheCapacity is the number of nodes, that the engine keeps in the memory. Each node keeps by default 100000 user records.

  3. #3
    Junior Member
    Join Date
    Sep 2013
    Posts
    11

    Default

    IStorageEngine doesn't have this property. I had to cast it to 'StorageEngine'. By default its 30. Do you want me to set this to zero ?

  4. #4

    Default

    Try to set it to 10.

  5. #5
    Junior Member
    Join Date
    Sep 2013
    Posts
    11

    Default

    Thank you. That helps.

    It still spikes up the usage every now and then but it goes back down eventually. This is not exactly what I was hoping it to be, I was thinking of having *everything* staying on disk and only whats needed is loaded in the memory. But apparently the Waterfall operations require memory too.

  6. #6

    Default

    You can also try to set it to 1 - this will force the engine to flush almost all cached nodes, and then turn it back to 10.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
2002 - 2014 STS Soft SC. All Rights reserved.
STSdb, Waterfall Tree and WTree are registered trademarks of STS Soft SC.