From: Shane Synan Date: Sun, 16 Apr 2017 04:28:44 +0000 (-0500) Subject: core: Drop the 'update_lastmsgid' statements X-Git-Tag: travis-deploy-test~292 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=6f10c8052924b7f66c2ffe590e15618414c08d69;hp=1d1178f7d73ab19e62798f23c1d0cd5e0b4cdb59 core: Drop the 'update_lastmsgid' statements Remove the 'update_lastmsgid.sql' queries from PostgreSQL and SQLite and remove the 'setBufferLastMsgId()' functions from PostgreSqlStorage and SqliteStorage. These are no longer needed now that database triggers handle updating the 'lastmsgid' for buffers. This removes redundancy and might improve performance. Resolves GH-290. --- diff --git a/src/core/SQL/PostgreSQL/update_buffer_lastmsgid.sql b/src/core/SQL/PostgreSQL/update_buffer_lastmsgid.sql deleted file mode 100644 index b0f17116..00000000 --- a/src/core/SQL/PostgreSQL/update_buffer_lastmsgid.sql +++ /dev/null @@ -1,3 +0,0 @@ -UPDATE buffer -SET lastmsgid = :lastmsgid -WHERE bufferid = :bufferid diff --git a/src/core/SQL/SQLite/update_buffer_lastmsgid.sql b/src/core/SQL/SQLite/update_buffer_lastmsgid.sql deleted file mode 100644 index b0f17116..00000000 --- a/src/core/SQL/SQLite/update_buffer_lastmsgid.sql +++ /dev/null @@ -1,3 +0,0 @@ -UPDATE buffer -SET lastmsgid = :lastmsgid -WHERE bufferid = :bufferid diff --git a/src/core/postgresqlstorage.cpp b/src/core/postgresqlstorage.cpp index 2877ae0f..cbbd4738 100644 --- a/src/core/postgresqlstorage.cpp +++ b/src/core/postgresqlstorage.cpp @@ -1370,17 +1370,6 @@ QHash PostgreSqlStorage::bufferMarkerLineMsgIds(UserId user) return markerLineHash; } -void PostgreSqlStorage::setBufferLastMsg(const BufferId &bufferId, const MsgId &msgId) -{ - QSqlQuery query(logDb()); - query.prepare(queryString("update_buffer_lastmsgid")); - - query.bindValue(":bufferid", bufferId.toInt()); - query.bindValue(":lastmsgid", msgId.toInt()); - safeExec(query); - watchQuery(query); -} - bool PostgreSqlStorage::logMessage(Message &msg) { QSqlDatabase db = logDb(); @@ -1434,9 +1423,6 @@ bool PostgreSqlStorage::logMessage(Message &msg) db.commit(); if (msgId.isValid()) { msg.setMsgId(msgId); - - setBufferLastMsg(msg.bufferInfo().bufferId(), msgId); - return true; } else { diff --git a/src/core/postgresqlstorage.h b/src/core/postgresqlstorage.h index bffdb0d0..c96687e6 100644 --- a/src/core/postgresqlstorage.h +++ b/src/core/postgresqlstorage.h @@ -95,18 +95,6 @@ public slots: virtual QHash bufferLastSeenMsgIds(UserId user); virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId); virtual QHash bufferMarkerLineMsgIds(UserId user); - /** - * Sets the last known valid message ID for the given buffer. - * - * This limits LastSeenMsgIds from being set to message IDs in the future, improving performance - * when searching for messages in the backlog. - * - * @see PostgreSqlStorage::setBufferLastSeenMsg() - * - * @param bufferId[in] ID of the Buffer - * @param msgId[in] ID of latest message for this buffer - */ - virtual void setBufferLastMsg(const BufferId &bufferId, const MsgId &msgId); /* Message handling */ virtual bool logMessage(Message &msg); diff --git a/src/core/sql.qrc b/src/core/sql.qrc index e39fc27b..d302b4db 100644 --- a/src/core/sql.qrc +++ b/src/core/sql.qrc @@ -74,7 +74,6 @@ ./SQL/PostgreSQL/setup_120_alter_messageid_seq.sql ./SQL/PostgreSQL/setup_130_function_lastmsgid.sql ./SQL/PostgreSQL/update_backlog_bufferid.sql - ./SQL/PostgreSQL/update_buffer_lastmsgid.sql ./SQL/PostgreSQL/update_buffer_lastseen.sql ./SQL/PostgreSQL/update_buffer_markerlinemsgid.sql ./SQL/PostgreSQL/update_buffer_name.sql @@ -178,7 +177,6 @@ ./SQL/SQLite/setup_130_identity.sql ./SQL/SQLite/setup_140_identity_nick.sql ./SQL/SQLite/update_backlog_bufferid.sql - ./SQL/SQLite/update_buffer_lastmsgid.sql ./SQL/SQLite/update_buffer_lastseen.sql ./SQL/SQLite/update_buffer_markerlinemsgid.sql ./SQL/SQLite/update_buffer_name.sql diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index f671c393..10c5f1b7 100644 --- a/src/core/sqlitestorage.cpp +++ b/src/core/sqlitestorage.cpp @@ -1475,17 +1475,6 @@ QHash SqliteStorage::bufferMarkerLineMsgIds(UserId user) return markerLineHash; } -void SqliteStorage::setBufferLastMsg(const BufferId &bufferId, const MsgId &msgId) -{ - QSqlQuery query(logDb()); - query.prepare(queryString("update_buffer_lastmsgid")); - - query.bindValue(":bufferid", bufferId.toInt()); - query.bindValue(":lastmsgid", msgId.toInt()); - safeExec(query); - watchQuery(query); -} - bool SqliteStorage::logMessage(Message &msg) { QSqlDatabase db = logDb(); @@ -1524,8 +1513,6 @@ bool SqliteStorage::logMessage(Message &msg) MsgId msgId = logMessageQuery.lastInsertId().toInt(); if (msgId.isValid()) { msg.setMsgId(msgId); - - setBufferLastMsg(msg.bufferInfo().bufferId(), msgId); } else { error = true; diff --git a/src/core/sqlitestorage.h b/src/core/sqlitestorage.h index e42feb4b..9a12fbef 100644 --- a/src/core/sqlitestorage.h +++ b/src/core/sqlitestorage.h @@ -96,18 +96,6 @@ public slots: virtual QHash bufferLastSeenMsgIds(UserId user); virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId); virtual QHash bufferMarkerLineMsgIds(UserId user); - /** - * Sets the last known valid message ID for the given buffer. - * - * This limits LastSeenMsgIds from being set to message IDs in the future, improving performance - * when searching for messages in the backlog. - * - * @see SqliteStorage::setBufferLastSeenMsg() - * - * @param bufferId[in] ID of the Buffer - * @param msgId[in] ID of latest message for this buffer - */ - virtual void setBufferLastMsg(const BufferId &bufferId, const MsgId &msgId); /* Message handling */ virtual bool logMessage(Message &msg);