advanced queueing [message #94770] |
Sun, 24 February 2002 03:33 |
coskan
Messages: 2 Registered: February 2002
|
Junior Member |
|
|
hi
i have a question about oracle advanced queueing. i have downloaded oracle 8i version 8.1.7 enterprise edition from otn. i dont have a product licence and a metalink account.
i have installed typical version of enterprise edition. the universal installer says that advanced queueing has been installed. but when i look at v$option table i see that it is false and when i try to create a queue_table it says feature not enabled.
after this i run the dbmsaqad.sql script from rdmbs folder
and try again at that time the error message is like this
BEGIN dbms_aqadm.create_queue_table (queue_table => 'AppOne_QTab', multiple_consumers => true, queue_payload_type => 'RAW'); END;
*
ERROR at line 1:
ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package "SYS.DBMS_AQADM_SYS" has been invalidated
ORA-04065: not executed, altered or dropped package "SYS.DBMS_AQADM_SYS"
ORA-06508: PL/SQL: could not find program unit being called
ORA-06512: at "SYS.DBMS_AQADM", line 55
ORA-06512: at line 1
can anyone help me about my question pls
because i am trying to do a graduate project about xml and i need advanced queueing.
|
|
|
Re: advanced queueing [message #94959 is a reply to message #94770] |
Tue, 02 July 2002 01:52 |
Bala
Messages: 205 Registered: November 1999
|
Senior Member |
|
|
1. When package state has been reinitialized in your session, DBMS_OUTPUT is reset to "not enabled."
Packages can be reset to their initial state with a call to DBMS_SESSION.RESET_PACKAGE. (See Chapter 11, Managing Session Information, for more information about this program.) You might call this procedure yourself, but that is unlikely. A more common scenario for resetting package states is when an error is raised in your session that causes packages to be reset to their initial state. Here is the error for which you need to beware:
ERROR at line 1:
ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package "PKG.PROC" has been invalidated
ORA-04065: not executed, altered or dropped package "PKG.PROC"
ORA-06508: PL/SQL: could not find program unit being called
If you get this error and simply continue with your testing, you may be surprised to find that you are not getting any output. If you remember that DBMS_OUTPUT relies on package variables for its settings, this makes perfect sense. So when you get the preceding error, you should immediately "re-enable" DBMS_OUTPUT with a command such as the following:
SQL> set serveroutput on size 1000000 format wrapped
I usually just re-execute my login.sql script, since I may be initializing several different packages:
SQL> @login.sql
When will you get this error? I have found that it occurs when I have multiple sessions connected to Oracle. Suppose that I am testing program A in session USER1. I run it and find a bug. I fix the bug and recompile program A in session USER2 (the owner of the code). When I try to execute program A from session USER1 again, it raises the ORA-04068 error.
If you do encounter this error, don't panic. Just reset your package variables and run the program again. It will now work fine; the error is simply the result of a quirk in Oracle's automatic recompilation feature.
DBMS_OUTPUT Examples
----------------------------------------------------------------------------
|
|
|
Re: advanced queueing [message #95050 is a reply to message #94959] |
Wed, 18 September 2002 13:24 |
Sunil
Messages: 132 Registered: September 1999
|
Senior Member |
|
|
Recently I have been getting this error in my QA database, eventhough nobody has touched any of the code.
Mine is a web-application. What should I do to avoid getting this error frequently. I hav left some unwanted DBMS_OUTPUTs for debugging purpose. If I remove those, will it reduce frequency of this problem.
But I do have AQ running and they call procedures that have EXECUTE immediate which could fail.
thanks
|
|
|
Re: advanced queueing [message #95616 is a reply to message #94770] |
Tue, 16 March 2004 08:32 |
Mohanraj
Messages: 2 Registered: March 2004
|
Junior Member |
|
|
Hi coskan,
what i can u/s from ur question is the package has become invalid. You just need to compile the package once again by giving alter package command.
ALTER PACKAGE <package_name> COMPILE.
all the best.
regars
mohanraj
|
|
|