Kbase P12054: Error 2090 corrected by alternative indexing on recid
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
FACT(s) (Environment):
Progress 9.1B
Progress 9.1C
Progress 9.1D
MS SQL DataServer
ODBC DataServer
SYMPTOM(s):
Record ID is larger than <max-recid>. (2090)
Error appears when accessing or inserting data into foreign database
Progress_recid is not created in the foreign database or not used in the index supporting recid
Can not use new start up parameters introduced in progress 9.1D
Can not create PROGRESS_RECID and PROGRESS_RECID_IDENT columns in the foreign data source
CAUSE:
If you do not select the Progress RECID field in your Progress-to SQL Server Database conversion or do not have a Progress_recid field, then a unique index over each table is selected to support Progress RECID/ROWID functions. RECID functionality enables backward and forward scrolling in the DataServer for Microsoft SQL Server product.
The RECID buffer is used to store key information about the unique index selected to support RECID. The default RECID buffer size is 245 bytes. The space is used dynamically to allocate the RECID buffer for a given record. The RECID buffer size needs to be large enough to contain all the key information regarding the unique index. If the unique index selected is a composite of many columns and/or contains large column names, the RECID key information might exceed the RECID buffer size and issue an error message 2090.
FIX:
Use an alternative unique index with a smaller number of key fields to represent the Progress RECID.