Consultor Eletrônico



Kbase P131182: CRC value changes differ when comparing a 10.0B database to 10.0B01 or higher
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   5/5/2008
Status: Unverified

FACT(s) (Environment):

OpenEdge 10.1A
All Supported Operating Systems

SYMPTOM(s):

Error 1896 when you try to run a r-code

** CRC for <filn> does not match CRC in <procedure>. Try recompiling. (1896)

Table which contains at least one BLOB or CLOB field

CRC values don't match after apply a delta df file

CRC changed after dump/load

CRC value changes differ when comparing a 10.0B database to 10.0B02

CRC value changes differ when comparing a 10.0B database to 10.0B03

CRC value changes differ when comparing a 10.0B01 database to 10.0B02

CRC value changes differ when comparing a 10.0B01 database to 10.0B03

CRC value changes differ when comparing a 10.0B database to 10.1A

CRC value changes differ when comparing a 10.0B01 database to 10.1A

CRC value changes when applying same df to 10.0B or 10.0B03 databases

CRC value changes differ when comparing a 10.0B database to 10.0B01 or higher

CAUSE:

Bug# OE00126957

FIX:

Even after upgrading to 10.0B02 or higher, you still need to force a recalculation of the CRC .
There are many ways to do this.
Here is a simple piece of code that will force the CRCs to be updated for all CLOB and BLOB fields in a database.

It will display the new CRCs and the _fld-stdtype being changed.
Uncomment the code to do the change.
Please make sure to backup the database before doing this.
DEFINE VARIABLE itype AS INTEGER NO-UNDO.
DEFINE VARIABLE icrc AS INTEGER NO-UNDO.
FOR EACH _file NO-LOCK,
EACH _field OF _file WHERE
_field._dtype >= 18 AND
_field._dtype <= 20 :
/* Uncomment to change the CRC
icrc = _file._CRC.
itype = _field._fld-stdtype.
_field._fld-stdtype = (IF itype = ? THEN 0 ELSE ?).
_field._fld-stdtype = itype.
DISPLAY
_file._file-name
icrc
_file._CRC
_field._field-name
_field._data-type
_field._fld-stdtype
itype.
*/
DISPLAY
_file._file-name
_field._field-name
_field._data-type.
END.