Mastodon 3.3.0rc1、リリースノートに直接的には書かれてませんけど docker-compose run --rm web tootctl maintenance fix-duplicates の実行がほぼ必須らしい。
db:migrate が警告を出すのです。
"Your database collation is susceptible to index corruption.
(This warning does not indicate that index corruption has occured and can be ignored)
(To learn more, visit: https://docs.joinmastodon.org/admin/troubleshooting/index-corruption/)"
"データベースの照合順序は、インデックスの破損の影響を受けやすくなっています。
(この警告は、インデックスの破損が発生したことを示すものではなく、無視できます)
(詳細については、https://docs.joinmastodon.org/admin/troubleshooting/index-corruption/ にアクセスしてください)"
@tateisu glibc 2.28でUnicode文字列の順番が変更になったので、MastodonのPostgreSQLをこのバージョンを越えて更新する場合にインデックスが破損してしまうという問題のようです。PostgreSQLのOSの更新をせずアプリのコードの更新だけをする場合には気にしないで良さそうです。
@zundan うちはDocker構成なんでDBコンテナのalpineにはglibc入ってないまであるのですが、まあいつのまにか重複データが混ざってたとかもありうるので…
@tateisu なるほど〜。Dockerだとホストのglibcが透けてきたりするんですね。確かにいつのまにか重複データができちゃったりしてそうです。僕もやっておこうかな…。
@zundan alpineでは glibc 互換の musl-libc が使われてますね。コチラに同様の問題があるのかは分かりません。
@tateisu なるほど!! musl-libcがどれくらいglibcとの互換性を保とうとしてるかに依りそうですね