Consultor Eletrônico



Kbase P94141: Running UPDATE STATISTICS three times in a row gives different results each time
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   23/12/2008
Status: Verified

SYMPTOM(s):

Running UPDATE STATISTICS three times in a row gives different results each time

First attempt at running UPDATE STATISTICS gives error 7711

[JDBC Progress Driver]:MM- Row too big (7711)

Second attempt at running UPDATE STATISTICS works

Third attempt at running UPDATE STATISTICS gives error 7511

[JDBC Progress Driver]:Cursor not opened (7511)

FACT(s) (Environment):

Progress 9.1D
Progress 9.1E
OpenEdge 10.0A
OpenEdge 10.0B
All Supported Operating Systems

CAUSE:

Bug# 20040909-006

CAUSE:

Incorrect error/exception handling was causing the UPDATE STATISTICS command to incorrectly generate errors

FIX:

Upgrade to 10.0B01 or later
If upgrading is not possible the following workaround is available for 9.1D
When the error 7711 occurs against a client there may be a file named sqlxxxxx.trc # where xxxx = some string of 5 digits and may be found in the database server's working directory. That file will say what the total length of the data being sorted was. Add 25% to that, and use the resulting value as the -SQLTempPgSize.
It is possible that a .trc file will not be produced.
Alternatively, if the error is only while doing UPDATE STATISTICS, then find the table in the
database with the largest record. Add up the defined sql widths of every Character and Decimal column, add 25%, and use that value.
The easiest way to get the sql width for Character and Decimal columns, is to create a .df file, which will give the sql width for each column.
Then start the database with the -SQLTempPgSize parameter and use the value obtained using one of the methods noted earlier.
proserve <dbname > -S <servie-name> -SQLTempPgSize <value-from-above-method>