From 09304f9ce1f0611795a9257f6ee768e5e05fdf7f Mon Sep 17 00:00:00 2001
From: Jonas Leder <jonas@jonasled.de>
Date: Sun, 26 Jan 2025 15:30:31 +0100
Subject: [PATCH] use batch insert for values, to speedup SQL operation

---
 messageworker/main.go | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/messageworker/main.go b/messageworker/main.go
index 0fb8f9e..68dc2c4 100644
--- a/messageworker/main.go
+++ b/messageworker/main.go
@@ -42,6 +42,7 @@ func Run() {
 				queue.MainQueue.Enqueue(taskData, 60)
 				return
 			}
+			valuesToInsert := []tables.Value{}
 			for key, value := range jsonData {
 				valueType := database.GetOrCreateValueType(key)
 				dbValue := tables.Value{
@@ -50,8 +51,9 @@ func Run() {
 					Value:     helper.AnyToString(value),
 					Instance:  instance,
 				}
-				database.Db.Create(&dbValue)
+				valuesToInsert = append(valuesToInsert, dbValue)
 			}
+			database.Db.Create(&valuesToInsert)
 			log.Log.Info("Stored boiler data in database")
 		}()
 	}
-- 
GitLab