From aaee1d7ee62c4f23b71536b24497a9721292a277 Mon Sep 17 00:00:00 2001 From: Dan Ballard Date: Sat, 9 Mar 2024 13:45:27 -0800 Subject: [PATCH] call prune on staorage start, prune account for extra messages if cap has been adjusted; remove unused maxBuffLines --- storage/message_store.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/storage/message_store.go b/storage/message_store.go index d393f99..69d776c 100644 --- a/storage/message_store.go +++ b/storage/message_store.go @@ -76,8 +76,8 @@ func (s *SqliteMessageStore) AddMessage(message groups.EncryptedGroupMessage) { func (s *SqliteMessageStore) checkPruneMessages() { if s.messageCap != -1 && s.messageCount > s.messageCap { log.Debugf("Message Count: %d / Message Cap: %d, message cap exceeded, pruning oldest 10%...", s.messageCount, s.messageCap) - // Delete 10% of messages - delCount := s.messageCap / 10 + // Delete 10% of messages (and any overage if the cap was adjusted lower) + delCount := (s.messageCount - s.messageCap) + s.messageCap/10 stmt, err := s.preparedPruneStatement.Exec(s.messageCap / 10) if err != nil { log.Errorf("%v %q", stmt, err) @@ -229,5 +229,7 @@ func InitializeSqliteMessageStore(dbfile string, messageCap int, incMessageCount slms.messageCount = slms.MessagesCount() + slms.checkPruneMessages() + return slms, nil }