DBAtlas · Atlas d'exploitation des bases de données

ORA-01555: Snapshot too old: rollback segment number too small (instantané trop ancien)

Oracle

Que signifie cette erreur ?

Une requête de longue durée n'a pas pu accéder aux anciennes données undo nécessaires pour construire l'image cohérente en lecture à son instant de démarrage, car ces informations undo ont été écrasées.

Cause

Tablespace undo trop petit, UNDO_RETENTION trop court, requêtes de longue durée pendant un DML concurrent très intense, ou boucle qui effectue des commits sur la même table à l'intérieur d'une requête (fetch across commit).

Comment la corriger

Augmentez UNDO_RETENTION et agrandissez le tablespace undo ; dans la mesure du possible, laissez-le en gestion automatique (AUTOEXTEND activé). Découpez les longues requêtes en plus petits morceaux ou exécutez-les hors des heures de pointe. Envisagez RETENTION GUARANTEE : ALTER TABLESPACE undotbs1 RETENTION GUARANTEE. Corrigez la logique applicative qui effectue des commits dans une boucle.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur