To ensure that proutil dbname -C convchar convert UTF-8 runs successfully after a dump and load, indexes must be rebuilt twice:
- During or after the binary load
- After the conversion, word-rules and df file
Outline of UTF-8 conversion after binary dumping data:
1. Create the new database structure
$ prostrct create dbname dbname.st -blocksize 8192
$ procopy dlc/empty8 dbname
2. Load in the database definitions (dictionary/load/df)
$ pro dbname -p _admin.p
3. Load all the binary dump files
$ proutil dbname -C load (dumped files) -i
4. Index rebuild the database
$ proutil dbname -C idxbuild all -TM 31 -TB 32 -SG 65 -T /cidx
5. Convert the database to UTF-8
$ proutil dbname -C convchar convert UTF-8
6. Load the word rules for UTF-8 and place the resulting proword.<n> in DLC
$ proutil dbname -C word rules 254
7. Load the prolang/utf/_tran.df file (dictionary/load/df)
$ pro dbname -p _admin.p
8. Index rebuild the database
$ proutil dbname -cpinternal UTF-8 -C idxbuild all -TM 31 -TB 32 -SG 65 -T /cidx