"zfs didn't change its on-disk format."
wtf are you talking about? you can switch compression on/off WHILE you actively write a fucking file to disk..
$ fio \
--filename=/pool/fiotest \
--sync=1 \
--rw=write \
--name=journal-test \
--size=10000m \
--rate=1m,1m
$ zfs set compression=off pool
$ zfs set compression=lz4 pool