何が起こったのか
macOS でタイムマシンを使用後に、1password を起動しようとしたら、以下のように「1passwordはローカルアプリのデータベースでエラーを検出しました。support@1password.comまでご連絡ください。」とポップアップウィンドウが出て、1password が使えなくなった。
どう解決したのか
素直にサポートへ英語でHELPしました。サポートから返信いただいた内容を元にどのように解決したのかを記します。
1. 非同期な1password データが存在するか確認する
ターミナルでコマンドを実行、出力されるテキストの中身を確認する
cd ~/Library/Group\ Containers/2BUA8C4S2C.com.1password/Library/Application\ Support/1Password/Data &&
sqlite3 1password.sqlite "select uuid from item_overviews where local_edit_count > 0;" > ~/Desktop/unsynced_item_uuids.txt
もし、テキストファイルの中身が空でなければ、非同期な1password データが存在するということなので、サポートに連絡してください。(私は空だったので、以下の手順に進みました)
2. 不具合を起こしているローカルDBのバックアップを取り、削除する
cd ~/Library/Group\ Containers/2BUA8C4S2C.com.1password/Library/Application\ Support/1Password/
# 7zip で圧縮ファイルとしてバックアップを取りました。7zipを導入してなければbrewで入れてください。
brew install p7zip
7z a Data_backup.7z Data
# ローカルDBを削除
rm -r Data
3. 1password を起動し直して、ログイン。お疲れ様でした。
おわりに
今回の不具合はサポートに連絡する前に英語も含めてググったのですが、該当するものが見つからない状態でした。
仕方なくサポートに連絡したのですが、担当者の方が的確に解決方法を教えてくれたため、1往復のやりとりのみで終わりました。
とは言え、時差もあり、即時解決とはいかなかったので、後に同じ問題に直面する人へ向け、本記事を書きました。
誰かの助けになりますように。
(おわり)