Oracle8i Application Developer's Guide - Advanced Queuing Release 2 (8.1.6) Part Number A76938-01 |
|
Managing AQ, 7 of 8
The following restrictions currently apply.
The auto_commit parameters in CREATE_QUEUE_TABLE
, DROP_QUEUE_TABLE
, CREATE_QUEUE
, DROP_QUEUE
and ALTER_QUEUE
calls in DBMS_AQADM
package are deprecated for 8.1.5 and subsequent releases. Oracle continues to support this parameter in the interface for backward compatibility purpose.
You cannot construct a message payload using a VARRAY that is not itself contained within an object. You also cannot currently use a nested table even as an embedded object within a message payload. However, you can create an object type that contains one or more VARRAYs, and create a queue table that is founded on this object type.
For example, the following operations are allowed:
CREATE TYPE number_varray AS VARRAY(32) OF NUMBER; CREATE TYPE embedded_varray AS OBJECT (col1 number_varray); EXECUTE DBMS_AQADM.CREATE_QUEUE_TABLE( queue_table => 'QT', queue_payload_type => 'embedded_varray');
The AQ Java classes in release 8.1.5 does not allow enqueuing and dequeuing object type payloads, only raw type payloads are supported.
All AQ PL/SQL calls do not resolve synonyms on queues and queue tables. Even though you can create a synonyms, you should not apply the synonym to the AQ interface.
Any tablespace which contains 8.0 compatible multiconsumer queue tables should not be transported using the pluggable tablespace mechanism. The mechanism will work, however, with tablespaces that contain only single consumer queues as well as 8.1 compatible multiconsumer queues. Before you can export a tablespace in pluggable mode, you have to alter the tablespace to read-only mode. If you try to import a read-only tablespace which contain 8.0 compatible multiconsumer queues, you will get an Oracle error indicating that you cannot update the queue table index at import time.
AQ currently does not support tablespace point in time recovery. Creating a queue table in a tablespace will disable that particular tablespace for point-in-time recovery.
Note that AQ does not support propagation from Object queues that have BFILE or REF attributes in the payload.
Currently you can create only non-persistent queues of RAW
type.You are limited in that you can send messages only to subscribers and explicitly specified recipients who are local. Propagation is not supported from non-persistent queues. And in retrieving messages, you cannot use the dequeue call but must instead employ the asynchronous notification mechanism, registering for the notification by mean of OCISubcriptionRegister
.
|
![]() Copyright © 1996-2000, Oracle Corporation. All Rights Reserved. |
|