From 5da5d0d4c16d96f1cae9fb56f85d1e49a104d9d7 Mon Sep 17 00:00:00 2001 From: DL6ER Date: Sun, 23 Feb 2025 08:50:08 +0100 Subject: [PATCH] Use temp_store = FILE to avoid memory exhaustion on build the tree for very large databases Signed-off-by: DL6ER --- gravity.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gravity.sh b/gravity.sh index 0a34599b..18a5c901 100755 --- a/gravity.sh +++ b/gravity.sh @@ -92,7 +92,8 @@ gravity_build_tree() { echo -ne " ${INFO} ${str}..." # The index is intentionally not UNIQUE as poor quality adlists may contain domains more than once - output=$({ pihole-FTL sqlite3 -ni "${gravityTEMPfile}" "CREATE INDEX idx_gravity ON gravity (domain, adlist_id);"; } 2>&1) + # We use temp_store = FILE to avoid memory exhaustion on large databases + output=$({ pihole-FTL sqlite3 -ni "${gravityTEMPfile}" "PRAGMA temp_store = FILE; CREATE INDEX idx_gravity ON gravity (domain, adlist_id);"; } 2>&1) status="$?" if [[ "${status}" -ne 0 ]]; then