DBAtlas · Atlas de operações de banco de dados

ORA-01555: Snapshot too old: rollback segment number too small

Oracle

O que significa?

Uma consulta de longa duração não conseguiu acessar os dados de undo antigos necessários para montar a imagem de leitura consistente referente ao seu momento de início, porque essas informações de undo foram sobrescritas.

Por que acontece?

Undo tablespace pequeno, UNDO_RETENTION curto, consultas de longa duração durante DML concorrente muito intenso, ou um loop que faz commit na mesma tabela dentro de uma consulta (fetch across commit).

Como resolver

Aumente o UNDO_RETENTION e amplie o undo tablespace; sempre que possível, deixe-o sob gerenciamento automático (AUTOEXTEND ativado). Divida consultas longas em partes menores ou execute-as fora do horário de pico. Considere RETENTION GUARANTEE: ALTER TABLESPACE undotbs1 RETENTION GUARANTEE. Corrija a lógica da aplicação que faz commit dentro de um loop.

Abrir no DBAtlas →

Mais entradas deste banco