Consultor Eletrônico



Kbase P61284: Error 290 when running an index rebuild when using a Progress version prior to 8.0B.
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   2/25/2010
Status: Verified

SYMPTOM(s):

Error 290 when running an index rebuild when using a Progress version prior to 8.0B.

SYSTEM ERROR: I/O error 0 in writeto, ret 8191, file 4(lbi)(srt), addr 2147475456 (290)

Size reported in 290 error in database log is consistent with 2 GB. (i.e. The addr in bytes)

SYSTEM ERROR: I/O error <n> in <program>, ret <n>, file <n>, addr <n>. (290)

FACT(s) (Environment):

proutil <db> -C idxbuild
Progress 6.x
Progress 7.x
Progress 8.0A
All Supported Operating Systems

CAUSE:

The sort file used by idxbuild has hit the 2GB limit imposed by both Progress and the Operating System.

This is caused by index rebuilding many, probably very large, indexes all at once.

FIX:

Don't rebuild as many indexes all at once, therefore reducing the amount that is contained within the sort file.

Instead, rebuild the largest ones by themselves and then rebuild all of the smaller ones together.

Use the "some" option on the proutil command to specify individual tables/indexes:
proutil <db> -C idxbuild some -TB 24 -TM 32 -B 1000

Alternatively, you could use something like what is mentioned in Solution P6424, "How to build an index list (for idxbuild or idxfix)" . You could then exclude the appropriate tables during each index build. Note that idxfix was not available in the versions related to this solution, but the contents of P6424 is still appropriate for idxbuild.