You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The instructions on docs and some github discussions (+ couple of other places I don't remember) suggest vacuuming is performed by running rippled with --vacuum /path/to/temp/db flag. In reality, it looks like /path/to/temp/db is completely ignored in current codebase.
Steps to Reproduce
Run rippled with --vacuum /path/to/temp/db
Expected Result
VACUUM should use specified /path/to/temp/db to perform sqlite vacuuming.
Alternatively (if it was decided that supplying path as an argument is flaky) users should be instructed to set up SQLITE_TMPDIR environmental variable (or other instructions that work best for different environments). Maybe if it is not defined it should print out a message that "hey, sqlite is vacuuming using default setting, which is probably your system drive, specify SQLITE_TMPDIR to point it to correct location"
Actual Result
It ignores /path/to/temp/db and performs vacuuming with the default temp directory, for linux it is determined in this order (source):
The directory set by PRAGMA temp_store_directory or by the sqlite3_temp_directory global variable
The SQLITE_TMPDIR environment variable
The TMPDIR environment variable
/var/tmp
/usr/tmp
/tmp
The current working directory (".")
Considering full history node - for most users who are not aware of that it would probably start vacuuming on a system drive and eventually run out of space, failing to vacuum.
For smaller nodes this might vacuum fine, but smaller nodes often don't even need to vacuum in the first place.
Environment
Ubuntu 22.04.4
rippled 2.2.1 (full history node)
Workaround
If anyone faces this issue right - you can just define SQLITE_TMPDIR before vacuuming
Issue Description
The instructions on docs and some github discussions (+ couple of other places I don't remember) suggest vacuuming is performed by running rippled with
--vacuum /path/to/temp/db
flag. In reality, it looks like/path/to/temp/db
is completely ignored in current codebase.Steps to Reproduce
Run rippled with
--vacuum /path/to/temp/db
Expected Result
VACUUM should use specified
/path/to/temp/db
to perform sqlite vacuuming.Alternatively (if it was decided that supplying path as an argument is flaky) users should be instructed to set up SQLITE_TMPDIR environmental variable (or other instructions that work best for different environments). Maybe if it is not defined it should print out a message that "hey, sqlite is vacuuming using default setting, which is probably your system drive, specify SQLITE_TMPDIR to point it to correct location"
Actual Result
It ignores
/path/to/temp/db
and performs vacuuming with the default temp directory, for linux it is determined in this order (source):Considering full history node - for most users who are not aware of that it would probably start vacuuming on a system drive and eventually run out of space, failing to vacuum.
For smaller nodes this might vacuum fine, but smaller nodes often don't even need to vacuum in the first place.
Environment
Ubuntu 22.04.4
rippled 2.2.1 (full history node)
Workaround
If anyone faces this issue right - you can just define
SQLITE_TMPDIR
before vacuumingThe text was updated successfully, but these errors were encountered: