Any possible way to get a progress estimate for ALTER COLUMN TYPE in Postgres?
PostgreSQL rewrites the table:

postgres=# \d t;
                   Table "public.t"
 Column |            Type             |   Modifiers   
--------+-----------------------------+---------------
 x      | integer                     | 
 y      | text                        | 
 z      | timestamp without time zone | default now()
Indexes:
    "idx_only_scan" btree (x, y, z)
postgres=# select relfilenode, relname from pg_class where relname='t';
 relfilenode | relname 
-------------+---------
       16760 | t
(1 row)

postgres=# alter table t alter column x set data type smallint;
ALTER TABLE
postgres=# select relfilenode, relname from pg_class where relname='t';
 relfilenode | relname 
-------------+---------
       16792 | t
(1 row)


There should be new database files in $PGDATA/base/"database_oid"  but I don't know if it is possible to get the new relation oid, to monitor the rewrite or to pause it:

$ ls -rtl  $PGDATA/base/13297/16792*
-rw-------. 1 postgres postgres 24576 Apr  9 08:02 /var/lib/pgsql/95/data/base/13297/16792_fsm
-rw-------. 1 postgres postgres  8192 Apr  9 08:02 /var/lib/pgsql/95/data/base/13297/16792_vm
-rw-------. 1 postgres postgres  8192 Apr  9 08:02 /var/lib/pgsql/95/data/base/13297/16792