Home > database >  SQLite "Runtime Error: database or disk full (13)" while running vacuum
SQLite "Runtime Error: database or disk full (13)" while running vacuum

Time:02-02

After running export SQLITE_TMPDIR=/run/media/ghostdog/data/datadir I then run sqlite3 database.db and subsequently vacuum; in the sqlite console. Despite having more than enough room in my new TMPDIR (201gb) while my database is half of that (116.32Gb), after a while of running, sqlite complains Runtime Error: database or disk full (13).

I have confirmed that I am indeed writing to my new TMPDIR by running while true; do df -kh; sleep .1; clear; done; in another console, and I am able to watch the Avail. and Use% go up until the sqlite instance either crashes or throws the aforementioned error. (Yes I am watching the correct directory, I am watching the entry mounted on /run/media/ghostdog/data/).

No other processes are running on this disk, and it is not my system disk, so I am sure that nothing else could be filling it (on top of this the Avail. field only goes down while vacuum; is running).

CodePudding user response:

I managed to solve this by freeing up enough space for 2 additional copies of my database, not just 2 copies in total. (So in my case, 232.64GB free)

  • Related