いつも通り、Sylpheedで迷惑メールの振り分け作業をしていたら、突然、つぎのようなエラーが:
「エラー」
「迷惑メールフィルタコマンドの実行に失敗しました。」
「迷惑メール対策の設定を確認してください。」
「OK」
ーーー
そこで、「ツール」→「ログウィンドウ」を表示しました所、末尾に次のエラーが:
** Sylpheed-WARNING: summary_junk_func: junk filter command returned 127
** Sylpheed-WARNING: summary_junk_func: junk filter command returned 127
ーーー
SylFilterのjunk.dbが壊れている様子です。
%APPDATA%\SylFilter\junk.db
ーーー
SQLiteと思いましたが、ちがいました。QDBMを採用している模様。
"C:\Program Files (x86)\Sylpheed\sylfilter-cui.exe" --help
...
Available key-value stores:
QDBM
ーーー
QDBMの開発元 http://fallabs.com/qdbm/
最新のソースパッケージ(バージョン1.8.78)
VisualStudio2005でビルド
ーーー
Depot用コマンド
http://fallabs.com/qdbm/spex-ja.html#depotcli
ーーー
ビルドしたdpmgr.exeで修復を試みる。
C:\DL\qdbm-1.8.78>dpmgr inform j.db
dpmgr: j.db: broken database file
C:\DL\qdbm-1.8.78>dpmgr repair j.db
C:\DL\qdbm-1.8.78>dpmgr inform j.db
name: j.db
file size: 2093929
all buckets: 81919
used buckets: 31556
records: 39815
inode number: 21899
modified time: 1422490817
ーーー
修復したデータベースを元の場所に戻したら、いけました!
ただ、きちんと修復されているのかどうか、つまり、データに整合性が有るのかどうか、知る術がないので、自己責任で、という話になります。
ちなみにオフィシャルの対応では、削除→作り直しを推奨しているようです。ここ。
0 件のコメント:
コメントを投稿