Consultor Eletrônico



Kbase P24468: Getting ORACLE error -1555 when running a large transaction.
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   24/02/2010
Status: Verified

SYMPTOM(s):

Getting ORACLE error -1555 when running a large transaction.

ORACLE error -1555 see "ORACLE Error Messages and Code Manual". (1252)

** snapshot too old: rollback segment number 7 with name "RBS6" too small

FACT(s) (Environment):

Oracle
All Supported Operating Systems

CAUSE:

The error being returned from Oracle is:

$ oerr ora 1555
01555, 00000, "snapshot too old: rollback segment number %s with name \"%s\" too small"
// *Cause: rollback records needed by a reader for consistent read are
// overwritten by other writers
// *Action: Use larger rollback segments

Rollback / Undo segments in Oracle are like the Progress bi files in concept. What this error is saying is that the size of this file has blown out. This is likely caused by one of two things:

1. A very large report or a transaction has been run that took a long time to process the data. Meanwhile more than one update was performed on the same record by one or more users which caused the first old value to be overwritten by the second update in the rollback segments buffer (<= 8i) or in the undo segment buffer (>=9i).
2. Due to the size of the big transaction, the rollback segment or the undo segment had been set too small.

FIX:

1. Review the Oracle documentation on how to increase the size of the Oracle rollback or undo segment buffer.
2. Run the big transaction during off-peak hours.