stellar / go

Stellar's public monorepo of go code
https://stellar.org/developers
Apache License 2.0
1.3k stars 499 forks source link

Horizon - Identify memory consumption model (Captive Core + Horizon) #4346

Open jcx120 opened 2 years ago

jcx120 commented 2 years ago

Captive Core requires 22GB of RAM to run (as of April/22) for ingestion and each reingestion worker. This has increased from 12GB earlier this year (due to ledger size growth).

However, during initialization, there could be additional memory requirements beyond 22GB RAM that could spike and prevent the process from proceeding (and settling back down to 22GB in steady state).

Tasks for this issue:

bartekn commented 2 years ago

Last week I run ingest.CheckpointChangeReader without anything else and it consumes 3.6GB at one of the latest checkpoints but database ingestion instances can consume even 8GB. We need to understand where 4.4GB come from.