core: Add backlog trigger to update lastmsgid
[quassel.git] / src / core / SQL / SQLite / setup_062_add_trigger_backlog_lastmsgid_update_direct_update.sql
diff --git a/src/core/SQL/SQLite/setup_062_add_trigger_backlog_lastmsgid_update_direct_update.sql b/src/core/SQL/SQLite/setup_062_add_trigger_backlog_lastmsgid_update_direct_update.sql
new file mode 100644 (file)
index 0000000..8cd02b9
--- /dev/null
@@ -0,0 +1,10 @@
+CREATE TRIGGER IF NOT EXISTS backlog_lastmsgid_update_trigger_update
+AFTER UPDATE
+ON backlog
+FOR EACH ROW
+    BEGIN
+        UPDATE buffer
+        SET lastmsgid = new.messageid
+        WHERE buffer.bufferid = new.bufferid
+            AND buffer.lastmsgid < new.messageid;
+    END