Configure Online Deletion
In its default configuration, the rippled
server deletes history older than the most recent 2000 ledger versions, keeping approximately 15 minutes of ledger history (based on the current rate between ledgers). This page describes how to configure the amount of history your rippled
server stores before deleting.
Prerequisites
This tutorial assumes your server meets the following prerequisites:
You are on a supported operating system: Ubuntu Linux, Red Hat Enterprise Linux (RHEL), or CentOS.
The
rippled
server is already installed and online deletion is enabled.If you followed the installation instructions for a recommended platform, online deletion is enabled by default.
Your server has enough disk space to store your chosen amount of history in its ledger store.
Configuration Steps
To change the amount of history your server stores, perform the following steps:
Decide how many ledger versions' worth of history to store.
New ledger versions are usually validated 3 to 4 seconds apart, so the number of ledger versions corresponds roughly to the amount of time you want to store. See Capacity Planning for details of how much storage is required for different configurations.
Online deletion is based on how many ledger versions to keep after deleting history, so you should have enough disk space to store twice as many ledgers as you set it to keep.
In your
rippled
's config file, edit theonline_delete
field of the[node_db]
stanza.[node_db] # Other settings unchanged ... online_delete=300000 advisory_delete=0
Set
online_delete
to the minimum number of ledger versions to keep after running online deletion. With automatic deletion (the default), the server typically runs deletion when it has accumulated about twice this many ledger versions.The recommended installation uses the config file
/etc/opt/ripple/rippled.cfg
by default. Other places you can put a config file include$HOME/.config/ripple/rippled.cfg
(where$HOME
is the home directory of the user runningrippled
),$HOME/.local/ripple/rippled.cfg
, or the current working directory from where you startrippled
.Start (or restart) the
rippled
service.$ sudo systemctl restart rippled
Wait for your server to sync to the network.
Depending on your network and system capabilities and how long your server was offline, it may take between 5 and 15 minutes to fully sync.
When your server is synced with the network, the server_info method reports a
server_state
value of"full"
,"proposing"
, or"validating"
.Periodically check your server's
complete_ledgers
range using the server_info method to confirm that ledgers are being deleted.After online deletion runs, the
complete_ledgers
range reflects that older ledgers are no longer available. As your server accumulates history, the total number of ledgers available should slowly increase to twice theonline_delete
value you configured, then decrease when online deletion runs.Monitor your
rippled
logs for messages that begin withSHAMapStore::WRN
. This can indicate that online deletion is being interrupted because your server fell out of sync with the network.If this happens regularly, your server may not have sufficient specifications to keep up with the ledger while running online deletion. Check that other services on the same hardware (such as scheduled backups or security scans) aren't competing with the
rippled
server for resources. You may want to try any of the following:- Increase your system specs. See System Requirements for recommendations.
- Change your configuration to store less history. (Step 2 of this tutorial)
- Change your server's
node_size
parameter. - Use NuDB instead of RocksDB for the ledger store.
- Schedule online deletion using Advisory Deletion.