foxcpp / foxcpp/maddy

Implement maddyctl imap-fsck

オープン
#189 コメント 0 件 リアクション 1 件 担当者 0 名 GitHub で見る
go-imap-sql imap new feature
主要言語
Go
スター
6.1k
フォーク
327
PR マージ指標
30日以内にマージされた PR はありません

説明

For performance purposes, go-imap-sql implements some operations in a way that does not use SQL engine capability to detect and fix inconsistency errors.
Such go-imap-sql bugs can make storage unusable. There is a need for utility that will do its best to make it usable again.

- Remove non-existent messages from the index
- Remove dangling messages (or optionally add them to the "lost+found" account so they can be inspected)
- Reassign UIDs for affected mailboxes (and change UIDVALIDITY)
- Update message counters
- Rebuild cached headers from actual messages

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず maddyctl コマンドと go-imap-sql ストレージ実装の場所を特定します。リカバリフローを定義する前に、インデックス、メッセージ、メールボックス UID、カウンター、キャッシュされたヘッダーがどのように表現されているかを確認します。ユーティリティが、オプションの lost+found 処理を含め、一覧にある各不整合に対処できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
go
領域
cli, databases
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。