The cvt_cyrusdb_all script is intended to run with the Invoca rpm version of
the cyrus-imapd package. Therefore it makes many assumtions which are not
always met in other environments.
The script is called from the init script which starts cyrus. It then compares
the config cache file with the distribution config file to know whether it has
something to do or not. If the two files differ, it will try to convert all
databases to the currently configured types and also try to compile all sieve
scripts. If a sieve script can't be compiled, it assumes that the script needs
to be converted to UTF-8 first and then it tries to compile it again. If
everything went fine, the current config is saved to the config cache so no
conversion is done until something changes which requires it.
USE AT YOUR OWN RISK!!!