hide sqlite config (netdata.conf) (#17838)
Ilya Mashchenko committed
Jun 7, 2024 at 12:13 UTC
485aa79fb7be8b843cc3688209567311919b5a66
1 file changed
+25
-6
src/database/sqlite/sqlite_functions.c
+25
-6
@@ -80,40 +80,59 @@ int configure_sqlite_database(sqlite3 *database, int target_version, const char
80
char buf[1024 + 1] = "";
81
const char *list[2] = { buf, NULL };
82
83
+ const char *def_auto_vacuum = "INCREMENTAL";
84
+ const char *def_synchronous = "NORMAL";
85
+ const char *def_journal_mode = "WAL";
86
+ const char *def_temp_store = "MEMORY";
87
+ long long def_journal_size_limit = 16777216;
88
+ long long def_cache_size = -2000;
89
+
90
// https://www.sqlite.org/pragma.html#pragma_auto_vacuum
91
// PRAGMA schema.auto_vacuum = 0 | NONE | 1 | FULL | 2 | INCREMENTAL;
85
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA auto_vacuum=%s", config_get(CONFIG_SECTION_SQLITE, "auto vacuum", "INCREMENTAL"));
92
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA auto_vacuum=%s", def_auto_vacuum);
93
+ if (config_exists(CONFIG_SECTION_SQLITE, "auto vacuum"))
94
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA auto_vacuum=%s",config_get(CONFIG_SECTION_SQLITE, "auto vacuum", def_auto_vacuum));
95
if (init_database_batch(database, list, description))
96
return 1;
97
98
// https://www.sqlite.org/pragma.html#pragma_synchronous
99
// PRAGMA schema.synchronous = 0 | OFF | 1 | NORMAL | 2 | FULL | 3 | EXTRA;
91
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA synchronous=%s", config_get(CONFIG_SECTION_SQLITE, "synchronous", "NORMAL"));
100
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA synchronous=%s", def_synchronous);
101
+ if (config_exists(CONFIG_SECTION_SQLITE, "synchronous"))
102
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA synchronous=%s", config_get(CONFIG_SECTION_SQLITE, "synchronous", def_synchronous));
103
if (init_database_batch(database, list, description))
104
return 1;
105
106
// https://www.sqlite.org/pragma.html#pragma_journal_mode
107
// PRAGMA schema.journal_mode = DELETE | TRUNCATE | PERSIST | MEMORY | WAL | OFF
97
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_mode=%s", config_get(CONFIG_SECTION_SQLITE, "journal mode", "WAL"));
108
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_mode=%s", def_journal_mode);
109
+ if (config_exists(CONFIG_SECTION_SQLITE, "journal mode"))
110
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_mode=%s", config_get(CONFIG_SECTION_SQLITE, "journal mode", def_journal_mode));
111
if (init_database_batch(database, list, description))
112
return 1;
113
114
// https://www.sqlite.org/pragma.html#pragma_temp_store
115
// PRAGMA temp_store = 0 | DEFAULT | 1 | FILE | 2 | MEMORY;
103
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA temp_store=%s", config_get(CONFIG_SECTION_SQLITE, "temp store", "MEMORY"));
116
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA temp_store=%s", def_temp_store);
117
+ if (config_exists(CONFIG_SECTION_SQLITE, "temp store"))
118
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA temp_store=%s", config_get(CONFIG_SECTION_SQLITE, "temp store", def_temp_store));
119
if (init_database_batch(database, list, description))
120
return 1;
121
122
// https://www.sqlite.org/pragma.html#pragma_journal_size_limit
123
// PRAGMA schema.journal_size_limit = N ;
109
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_size_limit=%lld", config_get_number(CONFIG_SECTION_SQLITE, "journal size limit", 16777216));
124
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_size_limit=%lld", def_journal_size_limit);
125
+ if (config_exists(CONFIG_SECTION_SQLITE, "journal size limit"))
126
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA journal_size_limit=%lld", config_get_number(CONFIG_SECTION_SQLITE, "journal size limit", def_journal_size_limit));
127
if (init_database_batch(database, list, description))
128
return 1;
129
130
// https://www.sqlite.org/pragma.html#pragma_cache_size
131
// PRAGMA schema.cache_size = pages;
132
// PRAGMA schema.cache_size = -kibibytes;
116
- snprintfz(buf, sizeof(buf) - 1, "PRAGMA cache_size=%lld", config_get_number(CONFIG_SECTION_SQLITE, "cache size", -2000));
133
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA cache_size=%lld", def_cache_size);
134
+ if (config_exists(CONFIG_SECTION_SQLITE, "cache size"))
135
+ snprintfz(buf, sizeof(buf) - 1, "PRAGMA cache_size=%lld", config_get_number(CONFIG_SECTION_SQLITE, "cache size", def_cache_size));
136
if (init_database_batch(database, list, description))
137
return 1;
138