Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

ORA-04068 existing state of packages %s%s%s has been discarded

Estas en el tema de ORA-04068 existing state of packages %s%s%s has been discarded en el foro de Oracle en Foros del Web. Código: ORA-04068 existing state of packages %s%s%s has been discarded Alguien sabe xq sale ésto y como puedo evitarlo ? Código: Oracle9i Enterprise Edition Release ...
  #1 (permalink)  
Antiguo 12/06/2006, 04:36
Avatar de Worp9975  
Fecha de Ingreso: mayo-2006
Ubicación: LV-426
Mensajes: 203
Antigüedad: 18 años
Puntos: 1
ORA-04068 existing state of packages %s%s%s has been discarded

Código:
ORA-04068 existing state of packages %s%s%s has been discarded
Alguien sabe xq sale ésto y como puedo evitarlo ?
Código:
 
Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production
PL/SQL Release 9.2.0.6.0 - Production
CORE 9.2.0.6.0 Production
TNS for HPUX: Version 9.2.0.6.0 - Production
NLSRTL Version 9.2.0.6.0 - Production
Gracias,
Salu2
  #2 (permalink)  
Antiguo 12/06/2006, 08:06
Avatar de PequeñoMauro  
Fecha de Ingreso: abril-2006
Ubicación: Lima - Perú
Mensajes: 600
Antigüedad: 18 años
Puntos: 3
Hola, te dejo estas páginas:
http://ora-04068.ora-code.com/
http://helpdesk.wisc.edu/page.php?id=2055
http://forums.oracle.com/forums/mess...sageID=1134547

Parece ser que, se soluciona cerrando y abriendo la aplicación nuevamente.
El tercer link explica un poco más el asunto, pero es un error poco común.
Espero que te ayude, saludos
__________________
"Nada en mis manos traigo tan solo a tu cruz me aferro....."
  #3 (permalink)  
Antiguo 13/06/2006, 03:13
Avatar de Worp9975  
Fecha de Ingreso: mayo-2006
Ubicación: LV-426
Mensajes: 203
Antigüedad: 18 años
Puntos: 1
Gracias PequeñoMauro por tus links .

Te comento un poco el escenario:

Tengo un paquete íntegramente desarrollado por mí. Lo ejecuto con PL/SQL Developer que es un utilitario de código para desarrollar PL/SQL.

Lo curioso es que ejecuto una vez y no sale; sin hacer absolutamente nada ejecuto de nuevo y sale, vuelvo a ejecutar y vuelve a salir. No comprendo porqué ocurre. Nadie más se ha conectado contra la bbdd, los demás usan la bbdd de desarrollo y ésta es local.

Compruebo el estado de los paquetes en la vista ALL_OBJECTS. Correcto.
Si efectúo:
Código:
 
SQL> ALTER PACKAGE miPaquete COMPILE ; 
Package altered
Vuelvo a ejecutar. Funciona
Ejecuto una vez más. Vuelve a salir.

Lo único más raro dentro del paquete es un proceso que vacía unas tablas temporales con sentencias del tipo DELETE FROM .

Estoy algo perdido.
Alguien se le ocurre algo ?

Gracias,
Salu2
  #4 (permalink)  
Antiguo 13/11/2007, 04:08
 
Fecha de Ingreso: junio-2007
Mensajes: 2
Antigüedad: 16 años, 10 meses
Puntos: 0
Re: ORA-04068 existing state of packages %s%s%s has been discarded

Hola Gente!

Yo tengo exactamente el mismo problema.
Cuando ejecuto las procedures una a una no hay ningun problema, todo funciona OK.
En cambio, cuando creo una procedure que realiza la llamada a todas las demas es cuando me fallan.
NO he encontrado una solución logica al problema pero si una solucion ilógica y temporal hasta que alguien o yo misma de con el problema.
La solucion temporal que yo he encontrado es ejecutar los INSERTS complejos y los DELETE mediante "EXECUTE IMMEDIATE". Haciendolo de esta manera no falla.

Espero le sirva de ayuda a alguien.

Saludos,
  #5 (permalink)  
Antiguo 13/11/2007, 16:33
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Re: ORA-04068 existing state of packages %s%s%s has been discarded

Hola,

Cita:
Yo tengo exactamente el mismo problema.
¿Estas teniendo el error ORA-04068?

Cita:
La solucion temporal que yo he encontrado es ejecutar los INSERTS complejos y los DELETE mediante "EXECUTE IMMEDIATE". Haciendolo de esta manera no falla.
¿Podrias postear el codigo?, ahora me dio curiosidad.

Saludos.
  #6 (permalink)  
Antiguo 13/11/2007, 20:40
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 1 mes
Puntos: 7
Re: ORA-04068 existing state of packages %s%s%s has been discarded

execute immediate "insert into tabla values (1)";
__________________
Blogzote.com :-) Mi blog
  #7 (permalink)  
Antiguo 14/11/2007, 03:40
Avatar de matanga  
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Re: ORA-04068 existing state of packages %s%s%s has been discarded

Hola,

Cita:
execute immediate "insert into tabla values (1)";
Me referia a postear el codigo PL/SQL que no le funciona, no a un ejemplo del EXECUTE IMMEDIATE.

Saludos.
  #8 (permalink)  
Antiguo 20/11/2007, 06:27
 
Fecha de Ingreso: noviembre-2007
Ubicación: Argentina
Mensajes: 134
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: ORA-04068 existing state of packages %s%s%s has been discarded

Señores, investigando un poco el tema, el problema parece ser que al ejecutar un paquete que contiene sentencias que afectan a tablas involucradas en otros paquetes o procedimientos, hacen que estos paquetes se descompilen por "service afecting" de las tablas involucradas.

Entonces, no quiere decir que el paquete tenga un error y que luego "magicamente" se corrige solo, esto esta afectado por llamadas a procedimientos o a funciones que usan tablas o vistas o snapshot que han sufrido cambios, los cuales fueron originados por el mismo paquete o por algun procidimiento o funcion que altera dichos objetos mencionados anteriormente.

En la iteracion, se produce el error... la solucion ? Se pueden evitar las llamadas a otras funciones o procedimientos; Se puede identificar las sentencias de definicion de datos y evitarlas dentro de los paquetes, en fin... son algunas de las muchas maneras.

Y con un ejemplo de mi amigo TOM... que de hecho tiene una pagina www.asktom.oracle.com
sacamos este ejemplo

http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:286816015990#67018 24184336
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 23:10.