Thread: ALTER COLLATION ... REFRESH VERSION - sample script outdated

ALTER COLLATION ... REFRESH VERSION - sample script outdated

From
PG Doc comments form
Date:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/13/sql-altercollation.html
Description:

The sample script that is given in section "Notes" finds only libc
collations. If you omit joining "pg_depend" you also find outdated ICU
collations. Like this:

DO  $BODY$
DECLARE
    r   RECORD;
BEGIN
    FOR r IN (
        SELECT n.nspname, c.collname
          FROM pg_collation c JOIN pg_namespace n ON c.collnamespace =
n.oid
         WHERE c.collversion <> pg_collation_actual_version(c.oid)
    ) LOOP
        EXECUTE format('ALTER COLLATION %I.%I REFRESH VERSION;', r.nspname,
r.collname);
        RAISE NOTICE 'ALTER COLLATION %.% REFRESH VERSION;', r.nspname,
r.collname;
    END LOOP;
END;
$BODY$;