This enhancement has not been implemented in the product. PROUTIL is not aware of the database codepage. If the database codepage is different to the
-cpinternal specified in the
DLC/startup.pf then it must be specified in the PROUTIL command line to ensure that the command executes correctly and does not introduce unexpected data corruption.
iow: use the
-cpinternal value that matches the
codepage of the database, not the client.
The reason that error 8557 is triggered with some PROUTIL Options, is that we need “-cpinternal UTF-8” during
index key operations, because sometimes a
code page conversion is needed. Without “
-cpinternal UTF-8”, the conversion may fail. Use binary load as example, after loading 1 million records successfully, a conversion error may eventually be encountered and the whole loading process fails. Adding this 8557 message at the beginning of binary load prevents this from happening and saves time by having -cpinternal properly specified at the beginning of the operation.
In OpenEdge 11.4, Enhancement PSC00299582 was Release Noted:
PSC00299582 : Utilities performing index operations on a UTF-8 database requires -cpinternal UTF-8
Utilities performing index key operations within PROUTIL require you to include "-cpinternal UTF-8" on the command line when operating on a UTF-8 database. If PROUTIL detects that your database is a UTF-8 database and -cpinternal UTF-8 is not specified, a message is generated and the utility exits.
The utilities are: LOAD, IDXACTIVATE, IDXFIX, IDXCHECK, IDXBUILD, CONV1011, PARTITIONMANAGE SPLIT, PARTITIONMANAGE MERGE, PARTITIONMANAGE TRUNCATE, and TPIDXBUILD.
Prior to OpenEdge 11.4, only the following utilities would exit with the 8557 message when -cpinternal was not specified:
conv1011, idxcheck, idxfix, idxbuild, and tpidxbuild