summaryrefslogtreecommitdiffstats
path: root/database
diff options
context:
space:
mode:
authorEmmanuel Vasilakis <mrzammler@mm.st>2023-09-26 12:52:19 +0300
committerGitHub <noreply@github.com>2023-09-26 12:52:19 +0300
commitce06ace57d195c28d329bd77cfcbd2ab54d82d71 (patch)
tree842d4193baead38e989a4c9cd91cd1b24cc051e1 /database
parent7247a5a3a7c8c470843de63dd6a7cde0826b4c59 (diff)
Fix summary field in table (#16050)
fix summary field in table
Diffstat (limited to 'database')
-rw-r--r--database/sqlite/sqlite_db_migration.c30
-rw-r--r--database/sqlite/sqlite_functions.c2
2 files changed, 30 insertions, 2 deletions
diff --git a/database/sqlite/sqlite_db_migration.c b/database/sqlite/sqlite_db_migration.c
index d1cf3a9256..a0815d4feb 100644
--- a/database/sqlite/sqlite_db_migration.c
+++ b/database/sqlite/sqlite_db_migration.c
@@ -94,6 +94,16 @@ const char *database_migrate_v11_v12[] = {
NULL
};
+const char *database_migrate_v12_v13_detail[] = {
+ "ALTER TABLE health_log_detail ADD summary TEXT;",
+ NULL
+};
+
+const char *database_migrate_v12_v13_hash[] = {
+ "ALTER TABLE alert_hash ADD summary TEXT;",
+ NULL
+};
+
static int do_migration_v1_v2(sqlite3 *database, const char *name)
{
UNUSED(name);
@@ -250,7 +260,7 @@ static int do_migration_v8_v9(sqlite3 *database, const char *name)
"updated_by_id int, updates_id int, when_key int, duration int, non_clear_duration int, " \
"flags int, exec_run_timestamp int, delay_up_to_timestamp int, " \
"info text, exec_code int, new_status real, old_status real, delay int, " \
- "new_value double, old_value double, last_repeat int, transition_id blob, global_id int, host_id blob);");
+ "new_value double, old_value double, last_repeat int, transition_id blob, global_id int, summary text, host_id blob);");
sqlite3_exec_monitored(database, sql, 0, 0, NULL);
snprintfz(sql, 2047, "CREATE INDEX IF NOT EXISTS health_log_d_ind_1 ON health_log_detail (unique_id);");
@@ -338,6 +348,23 @@ static int do_migration_v11_v12(sqlite3 *database, const char *name)
return rc;
}
+static int do_migration_v12_v13(sqlite3 *database, const char *name)
+{
+ int rc = 0;
+
+ netdata_log_info("Running \"%s\" database migration", name);
+
+ if (table_exists_in_database("health_log_detail") && !column_exists_in_table("health_log_detail", "summary")) {
+ rc = init_database_batch(database, &database_migrate_v12_v13_detail[0]);
+ sqlite3_exec_monitored(database, MIGR_11_12_UPD_HEALTH_LOG_DETAIL, 0, 0, NULL);
+ }
+
+ if (table_exists_in_database("alert_hash") && !column_exists_in_table("alert_hash", "summary"))
+ rc = init_database_batch(database, &database_migrate_v12_v13_hash[0]);
+
+ return rc;
+}
+
static int do_migration_noop(sqlite3 *database, const char *name)
{
UNUSED(database);
@@ -393,6 +420,7 @@ DATABASE_FUNC_MIGRATION_LIST migration_action[] = {
{.name = "v9 to v10", .func = do_migration_v9_v10},
{.name = "v10 to v11", .func = do_migration_v10_v11},
{.name = "v11 to v12", .func = do_migration_v11_v12},
+ {.name = "v12 to v13", .func = do_migration_v12_v13},
// the terminator of this array
{.name = NULL, .func = NULL}
};
diff --git a/database/sqlite/sqlite_functions.c b/database/sqlite/sqlite_functions.c
index 03f876aec0..dd224045b7 100644
--- a/database/sqlite/sqlite_functions.c
+++ b/database/sqlite/sqlite_functions.c
@@ -4,7 +4,7 @@
#include "sqlite3recover.h"
#include "sqlite_db_migration.h"
-#define DB_METADATA_VERSION 12
+#define DB_METADATA_VERSION 13
const char *database_config[] = {
"CREATE TABLE IF NOT EXISTS host(host_id BLOB PRIMARY KEY, hostname TEXT NOT NULL, "