Google chrome のブックマークが壊れて先祖返りした

Google chrome のブックマークが壊れて先祖返りした

2022/05/27

数日前にChromeのブックマークを整理した状態が過去の状態に戻っていた。

正確には、ブックマークの同期が正常に機能せず半年以上前に移動したはずのブックマークが戻っていたり、半年以上前に整理した内容も元に戻っていたり、一方で最近追加したブックマークは維持されていたり、ただ特定の状態に先祖返りしたのではなく過去と現在含めた状態が混在して滅茶苦茶になっているように見えた。

再現性があるようで、2台のPCを持っていてAで変更した内容がBで書き直されてしまう。Aは毎日何度も使うメインのPC。Bは毎日使わずスリープしていることが多いPC。起動回数が少ないBでChromeを起動すると、Bの状態を最新として誤認識して同期する。完全にBの状態になるのではなく、Bをベースに他のPCで追加されたブックマークの変更、追加を取り込みつつ同期するため壊れたような複雑な状態になる。

iCloudが原因という情報もあるが、iCloudを使用していないため関係が無い。とりあえず面倒なのでChromeのブックマーク同期はiTunesのプレイリスト同期並みに信用できないという認識で運用するのが望ましい。

同じような問題に遭遇しているユーザー報告は見つかったが、解決には至らなかった。

Chromeが勝手に昔のブックマークの状態にしてしまったものは直せるのか- - Google Chrome コミュニティ

とりあえず、AppData\Local\Google\Chrome\User Data\Default にある Bookmarks.bak を Bookmarks に置き換えた所、20日前の壊れる前に状態に戻す事ができた。

しかしこれでは20日前から現在までに追加、整理したブックマークは全て失われてしまう。

bookmarksはjsonフォーマットなのでバックアップと現在の状態を比較してみると以下の事が判明した。

・最近新規追加したブックマーク、フォルダは存在している

・最近移動したブックマークは移動前に場所に戻っている? (フォルダ作成して移動したブックマークは存在している)

・リネームしたブックマークはリネーム前に戻っている

何らかのバグで古い状態をメインとして誤って認識されて同期されたらしい。

Google Chromeのブックマーク同期がどのような実装をされているか不明だが、何らかの操作により最新の状態を誤認識することがあるようだ。以前にもおかしな挙動をしていたが被害はなかったので放置していた。

結局の所、状態が複雑なため現在の状態のブックマークをエクスポートしてから古いブックマークに一旦戻して、そこに現在の状態のブックマークをインポートした。「インポートされたブックマーク」と見比べながら手作業で再構築するしか方法はなかった。

開発者に実装する段階で発生し得る問題を把握できるはずなので、デバイス毎のブックマークのスナップショットぐらいは取れると良いが自分でバックアップをとっておくしかなさそうだ。

・やるべきこと

移動、削除など大幅な変更を加える場合はバックアップを取っておく

User Data\ 以下のBookmarks に世代バックアップを取っておく

※壊れたbookmarksとバックアップしていたのDiff

27. 5月 2022 von memo-log
カテゴリ: その他 |

コメント

コメント投稿

Required fields are marked *