ORA-01555: Snapshot too old: rollback segment number too small (instantané trop ancien)
OracleQue 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.
Autres entrées pour ce moteur
- ORA-00054Resource busy and acquire with NOWAIT specified or timeout expired (ressource occupée ; NOWAIT spécifié ou délai expiré)
- ORA-00060Deadlock detected while waiting for resource (interblocage détecté en attente de ressource)
- ORA-01017Invalid username/password; logon denied (nom d'utilisateur/mot de passe invalide ; connexion refusée)
- ORA-01652Unable to extend temp segment by N in tablespace (impossible d'étendre le segment temporaire de N dans le tablespace)
- ORA-04031Unable to allocate N bytes of shared memory (impossible d'allouer N octets de mémoire partagée)
- ORA-12154TNS: could not resolve the connect identifier specified (identifiant de connexion spécifié non résolu)
- ORA-12514TNS: listener does not currently know of service requested in connect descriptor (le listener ne connaît pas le service demandé)