Api - Historical data problem

I cannot solve this problem. Or am i wrong with using api?

--I add new properties to my noder--
nxt.ledgerTrimKeep=100000000
nxt.ledgerAccounts=*
nxt.includeExpiredPrunable=true
nxt.maxAPIRecords=3000

Hi,

First of all, the nxt.ledgerTrimKeep and nxt.ledgerAccounts configuration is affecting only the "Account Ledger" module, so only the getAccountLedger API will return events from the whole blockchain history with your settings.

If the ledger events are not sufficient and you really need to get the asset accounts at any height in the blockchain history, you must set nxt.trimDerivedTables to false. Or you can increase nxt.maxRollback if e.g. you need the asset accounts from the last 10000 blocks only (which will be much more economical than keeping all derived tables records)

I solve this problem by set nxt.maxRollback. Thanks :slight_smile:
It seems that trimming is need for decrease RAM usage. Is this right?

Trimming reduces database size and hence search times when index is not used. RAM usage - it is possible to rise when trimming is disabled but I haven't tried that.

Trimming itself requires significant resources every nxt.trimFrequency blocks so it's possible that RAM usage increases during blockchain download with trimming enabled.

If i set nxt.trimFrequency to higher number, is there any problem?
Trimming requires significant resources, it can reduce by increase nxt.trimFrequency.
Am i understand correctly?

The slowest part of the trimming is the deletion of the records. If you trim more rarely you will have to delete more records with each trimming. Trimming more rarely makes sense for tables that are updated more rarely - it saves the scan which is done by each trim. We already trim more rarely such tables - see nxt.trimFrequencyMultipliers