when reparsing all messages, actually store the new mime structure in the database

This commit is contained in:
Mechiel Lukkien 2025-04-18 09:05:09 +02:00
parent 75bb1bfa2f
commit 14af5bbb12
No known key found for this signature in database
2 changed files with 3 additions and 1 deletions

View File

@ -983,7 +983,7 @@ type Upgrade struct {
MessageParseVersion int // If different than latest, all messages will be reparsed. MessageParseVersion int // If different than latest, all messages will be reparsed.
} }
const MessageParseVersionLatest = 1 const MessageParseVersionLatest = 2
// upgradeInit is the value for new account database, which don't need any upgrading. // upgradeInit is the value for new account database, which don't need any upgrading.
var upgradeInit = Upgrade{ var upgradeInit = Upgrade{

View File

@ -103,6 +103,7 @@ func (a *Account) ReparseMessages(ctx context.Context, log mlog.Log) (int, error
if r.Err != nil { if r.Err != nil {
log.Errorx("marshal parsed form of message", r.Err, slog.Int64("msgid", r.Message.ID)) log.Errorx("marshal parsed form of message", r.Err, slog.Int64("msgid", r.Message.ID))
} else { } else {
r.Message.ParsedBuf = r.Buf
if err := tx.Update(r.Message); err != nil { if err := tx.Update(r.Message); err != nil {
return fmt.Errorf("update message: %w", err) return fmt.Errorf("update message: %w", err)
} }
@ -120,6 +121,7 @@ func (a *Account) ReparseMessages(ctx context.Context, log mlog.Log) (int, error
if r.Err != nil { if r.Err != nil {
log.Errorx("marshal parsed form of message", r.Err, slog.Int64("msgid", r.Message.ID)) log.Errorx("marshal parsed form of message", r.Err, slog.Int64("msgid", r.Message.ID))
} else { } else {
r.Message.ParsedBuf = r.Buf
if err := tx.Update(r.Message); err != nil { if err := tx.Update(r.Message); err != nil {
return fmt.Errorf("update message with id %d: %w", r.Message.ID, err) return fmt.Errorf("update message with id %d: %w", r.Message.ID, err)
} }