PostgreSQLで次の警告が表示されました。
2022-03-22 18:00:35.147 JST [68445] WARNING: collation "ja-x-icu" has version mismatch 2022-03-22 18:00:35.147 JST [68445] DETAIL: The collation in the database was created using version 153.14.39, but the operating system provides version 153.112.40. 2022-03-22 18:00:35.147 JST [68445] HINT: Rebuild all objects affected by this collation and run ALTER COLLATION pg_catalog."ja-x-icu" REFRESH VERSION, or build PostgreSQL with the right library version.
意味はわかりません。 表示されたガイドに従ってコマンドを実行してみます。
~/px►psql postgres psql (14.2) Type "help" for help. postgres=# ALTER COLLATION pg_catalog."ja-x-icu" REFRESH VERSION postgres-# ; NOTICE: changing version from 153.14.39 to 153.112.40 ALTER COLLATION
良さそうです。
参考
PostgreSQL 10のICUコレーションを使うと日本語を普通にソートでき、更に文字順序までカスタマイズできる – yohgaki's blog
ソート順序はICUのバージョンによって変わる場合があります。このため、ICUバージョンが異るとエラーが発生することがあります。
PostgreSQL 10からja-x-icuという日本語の順序の指定方法が追加されたそうです。 これにバージョンが存在するそうです(言われてみれば、そらそうですね)。 PostgreSQLをバージョンアップしたときに、DB内のICUバージョンとPostgreSQL側のICUバージョンがズレるみたいです。