ORA-01652: Unable to extend temp segment by N in tablespace (no se puede extender el segmento temporal en el tablespace)
Oracle¿Qué significa?
Oracle no encontró suficiente espacio libre en el tablespace para extender un segmento temporal (temp). Suele ocurrir durante ordenaciones, hash joins u operaciones con tablas temporales globales.
¿Por qué ocurre?
El tablespace TEMP está lleno; operaciones grandes de ORDER BY, GROUP BY, DISTINCT, hash join o creación de índices no caben en la memoria PGA y se vuelcan a disco; los datafiles tienen AUTOEXTEND desactivado o se agota el espacio en disco.
Cómo solucionarlo
Supervise el uso de TEMP: SELECT * FROM v$sort_usage / v$tempseg_usage. Añada un archivo o amplíe el tablespace TEMP: ALTER TABLESPACE temp ADD TEMPFILE '...' SIZE 2G AUTOEXTEND ON. Si un tablespace permanente está lleno, añada un datafile. Reduzca las ordenaciones en disco optimizando la consulta (índice adecuado, PGA_AGGREGATE_TARGET mayor).
Más entradas de este motor
- ORA-00060Deadlock detected while waiting for resource (deadlock detectado al esperar un recurso)
- ORA-01017Invalid username/password; logon denied (usuario/contraseña no válidos; inicio de sesión denegado)
- ORA-01555Snapshot too old: rollback segment number too small (snapshot demasiado antiguo)
- ORA-04031Unable to allocate N bytes of shared memory (no se pueden asignar N bytes de memoria compartida)
- ORA-12154TNS: could not resolve the connect identifier specified (no se pudo resolver el identificador de conexión)
- ORA-12514TNS: listener does not currently know of service requested in connect descriptor (el listener no conoce el servicio solicitado)
- ORA-00942Table or view does not exist (la tabla o vista no existe)