Advance Queue Propagation

Hardware: alpha-vms
I have a source queue, destination queue on the same database and another destination queue in a remote database.
payload objects:
create type js_change_typ as object ( bm_change_id NUMBER(9),
source_job_id NUMBER(9),
job_type NUMBER(6),
role_id VARCHAR2(15),
sub_type VARCHAR2(5),
submission_timestamp DATE) NOT FINAL
create type redec_cmn_typ under js_change_typ (
BM_UNIT VARCHAR2(10),
DATETIME_RECEIVED DATE,
TA_ID VARCHAR2(10),
SOURCE VARCHAR2(3)) FINAL
1) all three queues have the same data type (queuename.user_data js_change_typ).
Data enqued is of type js_change_typ to the source queue.
In this case i can deque in the destination queue both in the same database and remote database - NOT A PROBLEM.
2) all three queues have the same data type (quename.user_data js_change_typ)
Data enqued is of type redec_cmn_typ (inherits js_change_typ).
In this case, i can deque in the destination queue of the same database. BUT it DOES NOT propogate to the destination queue in the TARGET database.
Is there an issue with inheritance when propogating to a remote database? Also i want to go on adding nested tables to the payload. Is this supported?
I have tried with Oracle 9.2 and 10g.
Thanks

After raising a service request with Oracle and searching though documents established that Oracle DOES NOT SUPPORT:
INHERITANCE
NESTED TABLES
etc.
when PROPAGATING to a REMOTE database.

Similar Messages

  • Oracle Advanced Queuing - Propagation problem - 11g

    Hi,
    I have a problem when propagation messages between queues. When the message is propagated, it stays on the source queue with READY state.
    I have created two queues on 11g with a propagation rule that any message from queue A are sent to queue B. My problem is that the message from the source queue stays in the source queue even after propagation, which isn't what I was expecting. The problem doesn't occur if the queues are on a different database. This problem only happens if the queues are on the same database.
    the script I use is this:
    For USERB (which has the destination queue)
    create type EVENT_MESSAGE as object (
    eventsource VARCHAR2(30),
    eventname VARCHAR2(255),
    eventid NUMBER(19,0),
    message CLOB
    DECLARE
    an_agent sys.aq$_agent;
    BEGIN
    -- create the publish/subscribe queue table
    dbms_aqadm.create_queue_table(
    queue_table => 'DESTINATION_QUEUE_TABLE',
    queue_payload_type=>'EVENT_MESSAGE',
    sort_list => 'ENQ_TIME',
    message_grouping => DBMS_AQADM.NONE,
    multiple_consumers=>true
    -- create the queue
    dbms_aqadm.create_queue(
    queue_name => 'DESTINATION',
    queue_table => 'DESTINATION_QUEUE_TABLE',
    queue_type => DBMS_AQADM.NORMAL_QUEUE,
    max_retries => 5
    dbms_aqadm.create_aq_agent(agent_name =>'DEQUEUE_AGENT');
    an_agent := sys.aq$_agent('DEQUEUE_AGENT', null, null);
    dbms_aqadm.enable_db_access(
    agent_name => 'DEQUEUE_AGENT',
    db_username => 'USERB'
    dbms_aqadm.add_subscriber(
    queue_name => 'DESTINATION',
    subscriber => an_agent,
    queue_to_queue => FALSE,
    delivery_mode => DBMS_AQADM.PERSISTENT
    -- start the queues
    dbms_aqadm.start_queue('DESTINATION');
    END;
    For USERA
    create type EVENT_MESSAGE as object (
    eventsource VARCHAR2(30),
    eventname VARCHAR2(255),
    eventid NUMBER(19,0),
    message CLOB
    BEGIN
    -- create the publish/subscribe queue table
    dbms_aqadm.create_queue_table(
    queue_table => 'SOURCE_QUEUE_TABLE',
    queue_payload_type=>'EVENT_MESSAGE',
    sort_list => 'ENQ_TIME',
    message_grouping => DBMS_AQADM.NONE,
    multiple_consumers=>true
    -- create the queue
    dbms_aqadm.create_queue(
    queue_name => 'SOURCE',
    queue_table => 'SOURCE_QUEUE_TABLE',
    queue_type => DBMS_AQADM.NORMAL_QUEUE,
    max_retries => 5
    -- start the queues
    dbms_aqadm.start_queue('SOURCE');
    -- create the propagation
    dbms_aqadm.add_subscriber(queue_name => 'SOURCE',
    subscriber => sys.aq$_agent('DEQUEUE_AGENT','USERB.DESTINATION',null),
    queue_to_queue => true);
    dbms_aqadm.schedule_propagation(queue_name => 'SOURCE',
    start_time => sysdate,
    latency => 25,
    destination_queue => 'USERB.DESTINATION');
    END;
    When I enqueue a message to the source on USERA with this:
    declare
    rc binary_integer;
    nq_opt dbms_aq.enqueue_options_t;
    nq_pro dbms_aq.message_properties_t;
    datas EVENT_MESSAGE;
    msgid raw(16);
    begin
    nq_pro.expiration := dbms_aq.never;
    nq_pro.sender_id := sys.aq$_agent('ENQUEUE_AGENT', null, null);
    datas := AGEAS_EVENT_MESSAGE('message','eventname',1,null);
    dbms_aq.enqueue('SOURCE',nq_opt,nq_pro,datas,msgid);
    end;
    The message is propagated to the destination queue, no problem, but the message state on the source queue is kept as ready. I would have expected it to be marked as processed and disappear from the queue table.
    When I look at the AQ$_SOURCE_QUEUE_TABLE_S the I see these records:
         QUEUE_NAME     NAME     ADDRESS     PROTOCOL      SUBSCRIBER TYPE
         SOURCE     (null)     "USERB"."DESTINATION"@AQ$_LOCAL     0     1736
         SOURCE     DEQUEUE_AGENT     "USERB"."DESTINATION"     0     577
    Can anyone help?

    I was talking about following oracle documentations:
    Oracle Database 11g: Advanced Queuing (Technical Whitepaper)
    Streams Advanced Queuing: Best Practices (Technical Whitepaper)
    Oracle Streams Advanced Queuing and Real Application Clusters: Scalability and Performance Guidelines (Technical Whitepaper)
    They are available at.. http://www.oracle.com/technetwork/database/features/data-integration/default-159085.html

  • Propagation between queues in Oracle Advanced Queuing

    We would like to connect two queues that reside in different database schemas/instances.
    We try to use the propagation feature of Oracle to achieve this.
    The queue-type is the same for both queues.
    Enqueuing is done with a recipient list in order to set multiple local subscribers for the messages that are put onto the queue.
    We would like to propagate between queues without changing the applications that write to originating queue and the other applications that read from the target queue.
    During our research we only found ways where we need to change the application that writes onto the queue, which is not acceptable for us. Also the list of subscribers needs to be different based on the message.
    Therefore I have the following question:
    - is there a way to set up propagation between queues in a way where we don't need to modify the sending application?
    - if not, is there a different way to connect two queues via a subscriber/consumer?

    Oracle8i for Linux does have AQ, although I haven't evaluated it
    yet. If you're still having trouble with the install, make sure
    you get the patch. A quicker and easier way to get Oracle8i up
    cheaply for evaluation is to download the NT version. I'm
    evaluating Oracle8i for both Linux and NT and the NT version is
    more stable.
    I would really appreciate hearing about your experiences with AQ
    on Oracle8 (8.0.4.3). I have several projects that we have been
    considering using AQ with. Please send me an email and tell me
    what problems / work-arounds you found.
    Christian Schroeder (guest) wrote:
    : Hello,
    : I still haven't managed to install 8i completely
    : (files with zero-length, wrong permissions, wrong JVM, ...),
    : anyway... -))
    : We are using Oracle Advanced Queuing under 8.0.4.3 on AIX in
    : a project at my company and I wondered if AQ is in 8i for
    Linux?
    : I really would like to evaluate it at home, since the AIX
    : AQ version has some bugs and restrictions which I really need
    to
    : get around.
    : My idea is to get 8i for AIX, but I wouldn't buy it if the
    : queuing is still unstable.
    : The 8.0.4 documentation states that one will get AQ in the
    : Enterprise Edition with message-type 'RAW' and the Objects
    Option
    : will add full functionality if also purchased. I didn't find
    : any comments on AQ in the installation guide.
    : Regards,
    : Christian
    null

  • Advanced Queuing between 2 databases

    Hi,
    We want to use Oracle Advance Queuing to send a message from a source Database (transactional) to a Reporting database
    On a particular event on a record in the source database, we want to enqueue the record's code on a Queue in the target database, where the dequeuing will happen and some processing will take place for each code retrieved.
    Do we need to set up the Advanced Queuing software on both DBs?
    - Can we just have 1 queue on the target DB and get the source Database to enqueue records to it? How will the source DB will be given access to the queue?
    - Or do I really need to have a queue on each Database and use propagation?
    Thanks in advance for your help.
    Rgds

    Tony,
    thanks very much for your precious advice.
    I like your suggestion of having one queue, it keeps the infrastruture simple.
    Have I got the option of having this single queue either at the source or the target DB?
    Maybe let me summarise more precisely what I am trying to achieve: we want to copy a complex data structure on the Source DB to a simplified/flatter data structure on the reporting DB.
    An event on a row on the main table on the source DB triggers the copy.
    We are thinking of enqueing of the record's id to the queue (So app on the source DB will have to enqueue)
    and when dequeuing each message , a stored procedure will read the data structure for this record id and child tables and insert the relevant data to the report data structure on the target DB.
    So with one queue, it seems that there are 3 options, not sure which is best. The idea is to have minimum impact on the source DB
    1. Queue at the target DB. Source DB enqueues message remotely (is this possible? can't find any documentation about this?). Message is dequeued at the target and the proc (at target) reads from the source with DB link and writes the new data to the target
    2. Queue at the source DB. Source DB enqueues message locally, an application on the target DB dequeues the message and the procedure (at target) reads from the source with DB link and writes the new data to the target DB.
    3.Queue at the source DB. Source DB enqueues message locally, an application on the source DB dequeues the message and the procedure (at source) reads data from the source and writes the new data to the target using a DB link
    3. seems having the most impact on performance of the source db?
    In all case I don't think I can avoid a DB link in the sored proc (one way or the other) as the data structures are a too complex to be passed through the queue....
    What do you think?
    Thanks
    Philippe

  • Oracle advanced queuing

    Hi,
    I am new to Oracle Advanced queuing. I have a question.
    After enqueue operation, the message can be retrieved by dequeue operation.
    But, why do we need SCHEDULE_PROPAGATION ?
    Do we use that when we are sending it to a totally differnt queue in someother remote database ?
    Thanks,
    Message was edited by:
    user448390

    Do we use that when we are sending it to a totally
    differnt queue in someother remote database ?yes, partly true...SCHEDULE_PROPAGATION is used when we schedule propagation of messages to a destination identified by a Database Link.
    DBMS_AQADM.SCHEDULE_PROPAGATION (
       queue_name          IN    VARCHAR2,
       destination         IN    VARCHAR2 DEFAULT NULL,
       start_time          IN    DATE     DEFAULT SYSDATE,
       duration            IN    NUMBER   DEFAULT NULL,
       next_time           IN    VARCHAR2 DEFAULT NULL,
       latency             IN    NUMBER   DEFAULT 60,
       destination_queue IN VARCHAR2 DEFAULT NULL);
    destination_queue -- Name of the target queue to which messages are to be propagated in the form of a dblink.
    Messages may also be propagated to other queues in the same database by specifying a NULL destination. If a message has multiple recipients at the same destination in either the same or different queues, the message is propagated to all of them at the same time.
    Hope this will help..
    Thanks

  • Can you use streams replication to replicate an advanced queue?

    We need to be able to support failover of an Advanced Queue between a primary database instance and one or more alternate instances. To insure consitancy across the multiple-database instances, every enqueued and dequeued message must be replicated in the event of a failure on the primary node. TAF is used to automatically failover the App to an alternate database instance. Without getting into the details, Data Guard/Standby/RAC are NOT options.
    Questions:
    Is replication of an Advanced Queue supported via Streams Replication?
    Are there guidlines/recommendations on how this should be done/setup?

    No. AQ is not supported by Oracle Streams. User defined and Sys.AnyData are not supported types.
    You can create AQ propagation process from source to backup site. But you will need to dequeue both sites simultaniously.
    Or you can create schadow table (

  • Advanced queuing ...regarding

    Hi...
    I have to work on project which deals with advanced queuing...
    I gone through the docs ...but i couldn't understand fully...can anyone help in this aspect my questions are
    what i have to configure in my system?(software)
    how i have to move?
    please help me with an example..
    thanxs in advance.

    Oracle AQ is used as a means of asynchronous communication between two (or more) Oracle databases.
    Instead of communicating directly to the remote DB within your online application, you post a message into a local AQ queue (which would already have been setup for queue propagation) and Oracle takes care of making sure that it is made available at the destination (remote) AQ queue (it handles remote server not available and other transient errors automatically).
    Once the message appears at the remote queue, it could be read and appropriate action performed (as indicated by message contents).

  • Oracle queue propagation through http

    Hello,
         I have a big question regarding the advance queuing ;
         I have two database which I try to do a queue propagation trough http (10.2.1).
         The server is an OC4J server.
         A normal propagation through a normal dblink is working fine.
         But when I try a propagation over the http I get the following message.
    ORA-29268: HTTP client error 401 - Unauthorized
    ORA-06512: at "SYS.UTL_HTTP", line 1229
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 1209
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 7646
    ORA-06512: at "SYS.DBMS_AQADM", line 631
    ORA-06512: at line 1
         I check the dblink it looks ok, but it seems that the authentifiaction fails against the web server. I already make some investigation on the metalink but nothing help me.
         Have you an idea how I can solve this problem ?
         Thanks for your support and excellent day,
    Pascal

    Good morning,
         I have different links for that ;
              - http://www.oracle.com/technology/sample_code/tech/java/codesnippet/aq/MessagePropagation.htm
              - http://download.oracle.com/docs/cd/B14117_01/server.101/b10785/internet.htm#sthref1273
              - https://metalink.oracle.com/metalink/plsql/f?p=200:27:4315020014921003520::::p27_id,p27_show_header,p27_show_help:448236.999,1,1 (Carreful because the server is an jserv on the apache web server)
              - doc A88890-02
              - doc b14257
              And also the getting started with the oracle workflow 9i (white paper).
    And by the way, I have another question,
    There are 5 registered internal jobs, owned by SYS:
         DBMS_AQADM_SYS.REGISTER_DRIVER()          ever since last 5 jun, these jobs have begun to start and run endlessly, all waiting for wait event:
         "Stream AQ:waiting for messages in the queue"
              This happens no matter the value of AQ_TM_PROCESSES t(0 or >0)
              The only way to not let them start was to set status to "broken".
    What kind of jobs are these? Are they needed to run? why did the lock?
         Excellent day and THANKS A LOT,
    Pascal
    Message was edited by:
    user648576

  • Nested Tables and Advanced Queues- Please Help.

    How do i work with NestedTable type and Advanced Queue.
    I have done the following
    I have Oracle 8.1.7 enterprise edition.
    create type myType as TABLE OF varchar(32);
    create type myObject as OBJECT (
    id int,
    myt myType);
    DECLARE
    BEGIN
    dbms_aqadm.create_queue_table(
    queue_table => 'my_queue_table',
    multiple_consumers => TRUE,
    queue_payload_type => 'myObject',
    compatible => '8.1.3'
    END;
    The Nested Table and Object are created successfully.
    but the queue is not created.
    I get the following message.
    DECLARE
    ERROR at line 1:
    ORA-22913: must specify table name for nested table column or
    attribute
    ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2012
    ORA-06512: at "SYS.DBMS_AQADM", line 55
    ORA-06512: at line 3
    I know how to specify the nested table storage clause for
    create table statement, but there is no provision for
    it in the create_queue_table procedure.
    Any help will be greately appriciated.
    i have already created and tested aqs with simple data types,
    also i have created simple tables with nested table type
    elements.
    but the combo of Nested tables and AQ is not working.
    thanks in advance.

    Hi Francois. Thank you very much for your reply, but it seems that i still get errors. So let me tell what i have done.
    As you suggested me: i have done a block based on a sub-query for the nested-table:
    'select courses from department where name= :department.name'.
    In the master block(department) i have the when-new-record-instance trigger:
    Declare
    LC$Req varchar2(256);
    Begin
    LC$Req := '(select ns.courses from table
    ( select courses from department where name = ''' || :DEPARTMENT.name || ''' ) ns )';
    Go_block('block11');
    Clear_Block ;
    Set_Block_Property( 'block11', QUERY_DATA_SOURCE_NAME, LC$Req ) ;
    Execute_query ;
    End ;
    Now the errors i receive, this time in the runtime mode are:
    - FRM-41380: Cannot set the blocks query data source
    -FRM-41003: This function cannot be performed here.
    Since it seems that you know how to work with the nested table i would really appreaciate your help. I am new in the nested table and if you could give an ex with my tables it would be great.
    Thank you in advance.

  • Error when connect to Advanced Queuing Oracle

    Dear sir,
    I'm using intellij IDE write one a class java to connect Advanced Queuing, my code follow :
    queueConnectionFactory = AQjmsFactory.getQueueConnectionFactory("host", "sid", 1521, "thin");
    queueConnection = queueConnectionFactory.createQueueConnection("usernamer", "password");
    but program have error : "Exception in thread "main" oracle.jms.AQjmsException: ORA-00604: error occurred at recursive SQL level 1
    ORA-01882: timezone region not found".
    I try connect this schema by "sql developer", i receive same error. i change file sqldeveloper.conf, put line - AddVMOption -Duser.timezone="+07:00" then sql developer work fine.
    I download tzupdater-1.3.40-2011h and run "java -jar tzupdater.jar -u" and "java -jar tzupdater.jar -f" but app not run.
    can you have me. i need complete this app.

    Post the stack trace

  • Java advanced queue MDB class usage

    Hello,
    Loads of questions about JMS AQ and MDB.
    I have not found anything that tells you how to use the oracle.jms classes within a MDB's directly. Do I just cast the message to a AQMessage and retrieve from there?
    I have found plenty of documentation about using the oracle.jms classes. Ive found a lot of information about using advanced queues and enqueing and dequeuing to them in Java. I have found information about MDBs and how to use them as a regular service ie: using TextMessage
    Is there a simple document describing MDB oracle AQ classes? I have looked through umpteen million Oracle documents to no avail.
    Is there an interface for MDB in the Oracle AQ classes which has an onMessage() method which I can implement taking in oracle.jms classes?
    When processing a message that I would like to put on another queue do I call the AQ classes to enqueue a message and set its attributes that way or do I use the JMS classes and their methods to do that?

    http://download-west.oracle.com/docs/cd/A97688_12/generic.903/a97677/mdb.htm#1013265 should get me most of the way there.

  • Does the advanced queue support setting the pay load type as array/table?

    Does the advanced queue support setting the pay load type as array/table?
    if yes, how to write the enqueue script, I tried to write the following the script to enqueue, but failed, pls help to review it . Thanks...
    ------Create payload type
    create or replace TYPE "SIMPLEARRAY" AS VARRAY(99) OF VARCHAR(20);
    ------Create queue table
    BEGIN DBMS_AQADM.CREATE_QUEUE_TABLE(
    Queue_table => 'LUWEIQIN.SIMPLEQUEUE',
    Queue_payload_type => 'LUWEIQIN.SIMPLEARRAY',
    storage_clause => 'PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 TABLESPACE USERS',
    Sort_list => 'ENQ_TIME',
    Compatible => '8.1.3');
    END;
    ------Create queue
    BEGIN DBMS_AQADM.CREATE_QUEUE(
    Queue_name => 'LUWEIQIN.SIMPLEQUEUE',
    Queue_table => 'LUWEIQIN.SIMPLEQUEUE',
    Queue_type => 0,
    Max_retries => 5,
    Retry_delay => 0,
    dependency_tracking => FALSE);
    END;
    -------Start queue
    BEGIN
    dbms_aqadm.start_queue(queue_name => 'LUWEIQIN.SIMPLEQUEUE', dequeue => TRUE, enqueue => TRUE);
    END;
    -------Enqueue
    DECLARE
    v_enqueueoptions dbms_aq.enqueue_options_t;
    v_messageproperties dbms_aq.message_properties_t;
    p_queue_name VARCHAR2(40);
    Priority INTEGER;
    Delay INTEGER;
    Expiration INTEGER;
    Correlation VARCHAR2(100);
    Recipientlist dbms_aq.aq$_recipient_list_t;
    Exceptionqueue VARCHAR2(100);
    p_queue_name VARCHAR2(40);
    p_msg VARCHAR2(40);
    p_payload LUWEIQIN.SIMPLEARRAY;
    BEGIN
    p_payload(1) := 'aa';
    p_payload(2) := 'bb';
    SYS.DBMS_AQ.ENQUEUE(queue_name => 'LUWEIQIN.SIMPLEQUEUE',enqueue_options => v_enqueueoptions, message_properties => v_messageproperties, msgid => p_msg, payload => p_payload);
    END;
    ------Get error
    Error starting at line 1 in command:
    DECLARE
    v_enqueueoptions dbms_aq.enqueue_options_t;
    v_messageproperties dbms_aq.message_properties_t;
    p_queue_name VARCHAR2(40);
    Priority INTEGER;
    Delay INTEGER;
    Expiration INTEGER;
    Correlation VARCHAR2(100);
    Recipientlist dbms_aq.aq$_recipient_list_t;
    Exceptionqueue VARCHAR2(100);
    p_queue_name VARCHAR2(40);
    p_msg VARCHAR2(40);
    p_payload LUWEIQIN.SIMPLEARRAY;
    BEGIN
    p_payload(1) := 'aa';
    p_payload(2) := 'bb';
    SYS.DBMS_AQ.ENQUEUE(queue_name => 'LUWEIQIN.SIMPLEQUEUE',enqueue_options => v_enqueueoptions, message_properties => v_messageproperties, msgid => p_msg, payload => p_payload);
    END;
    Error report:
    ORA-06550: line 17, column 3:
    PLS-00306: wrong number or types of arguments in call to 'ENQUEUE'
    ORA-06550: line 17, column 3:
    PL/SQL: Statement ignored
    06550. 00000 - "line %s, column %s:\n%s"
    *Cause: Usually a PL/SQL compilation error.
    *Action:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

    but when I use the following script to enqueue get error. Pls help to review. Thanks...
    DECLARE
    v_enqueueoptions dbms_aq.enqueue_options_t;
    v_messageproperties dbms_aq.message_properties_t;
    p_queue_name VARCHAR2(40);
    Priority INTEGER;
    Delay INTEGER;
    Expiration INTEGER;
    Correlation VARCHAR2(100);
    Recipientlist dbms_aq.aq$_recipient_list_t;
    Exceptionqueue VARCHAR2(100);
    p_queue_name VARCHAR2(40);
    p_msg VARCHAR2(40);
    p_payload LUWEIQIN.SIMPLEARRAY;
    BEGIN
    p_payload(1) := 'aa';
    p_payload(2) := 'bb';
    SYS.DBMS_AQ.ENQUEUE(queue_name => 'LUWEIQIN.SIMPLEQUEUE',enqueue_options => v_enqueueoptions, message_properties => v_messageproperties, msgid => p_msg, payload => p_payload);
    END;
    ------Get error
    Error starting at line 1 in command:
    DECLARE
    v_enqueueoptions dbms_aq.enqueue_options_t;
    v_messageproperties dbms_aq.message_properties_t;
    p_queue_name VARCHAR2(40);
    Priority INTEGER;
    Delay INTEGER;
    Expiration INTEGER;
    Correlation VARCHAR2(100);
    Recipientlist dbms_aq.aq$_recipient_list_t;
    Exceptionqueue VARCHAR2(100);
    p_queue_name VARCHAR2(40);
    p_msg VARCHAR2(40);
    p_payload LUWEIQIN.SIMPLEARRAY;
    BEGIN
    p_payload(1) := 'aa';
    p_payload(2) := 'bb';
    SYS.DBMS_AQ.ENQUEUE(queue_name => 'LUWEIQIN.SIMPLEQUEUE',enqueue_options => v_enqueueoptions, message_properties => v_messageproperties, msgid => p_msg, payload => p_payload);
    END;
    Error report:
    ORA-06550: line 17, column 3:
    PLS-00306: wrong number or types of arguments in call to 'ENQUEUE'
    ORA-06550: line 17, column 3:
    PL/SQL: Statement ignored
    06550. 00000 - "line %s, column %s:\n%s"
    *Cause: Usually a PL/SQL compilation error.
    *Action:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Advanced Queues Snapshot too old error

    I am using the advanced queues to submit work for parallel processes running through the Oracle Job Queue.
    I have attempted running anywhere from 1 to 5 simultaneous processes (in addition the the process which submits them to the Oracle job queue and populates the advanced queues) and I am getting sporadic Snapshot too old errors when the other processes are attempting to dequeue. The Advanced queues are populated before the other processes are submitted to the job queue, so I don't see that there could be conflicts between one process enqueuing while another is dequeuing.
    The reason I am attempting this is to try and gain some performance by running processes in parallel.
    Has anyone else had problems like this? Is this a bug in Oracle 8.1.6? Is there a parameter setting I need to adjust? Are there any suggestions for getting around this problem?

    I don't know what version of the database you are running? I'm only using 8.1.7.4. But where I come from, you add datafiles to the tablespace, not the rollback segment.
    alter tablespace rollback
    add datafile '<blah, blah>'
    size 147m
    autoextend on next 100m maxsize 2047m;
    Make sure that you have a suitable number of rollback segments that are well-sized extents. But mostly, listen the Tom Best, and try and introduce some best practices (no pun intended) to reduce the likelihood of this situation arising.

  • Request for Comments and Experiences with Streams Advanced Queuing

    Hi,
    I would like to get some feedback about what your experiences with Streams Advanced Queuing. What do you like about it? What don't you like? How do you use it? What features would you love to see in it? Please post to the forums. Thanks!

    I love the new homeless Instant Client! I wish we had it years ago. Some comments:
    1) The MS ODBC administrator GPF's (blows up) when trying to configure a new data source using the new Oracle IC drivers. Have to hand-edit the registry.
    2) I heartily agree with the request that the new client install without requiring the normal Oracle installer. It's just too bloated for easy deployment. I'd rather hand install the files than to have to use that. Also, .zip not .jar please.
    3) Need better documentation on the connection string options. It took me 3 weeks to figure out that what used to be scott/tiger@mydb is now scott/[email protected]:1524/mydb.xxx.yyy (it's looking for the GLOBAL_NAME, not the SID and TNSPING won't show you that! Doh!)
    4) Please let us specify a range of ports (e.g. :1521-1524) and let it figure out where the SID is on that machine. We move ours around and don't want to update hundreds of clients with hardcoded command lines.
    5) Maximum backward compatibility, please! It's not easy moving all those Oracle apps to 8.1.7.4+ databases, yet, but my old OCI client programs should not have to care. I don't want to have 2 SQL*net driver stacks on my PC's.
    Thanks -- I'll be watching for new features.

  • Advanced queue in Oracle9i Standard Edition One

    Hi,
    Is advanced queuing available in the Standard Edition One for 9i?
    Thanks,
    Gloria

    Hi!
    i think, that the SE One is only an edition for 10g. in 10g and 9i advanced queuing is included in every available edition. Please refer to:
    http://www.oracle.com/technology/products/database/oracle10g/pdf/twp_general_10gdb_product_family_0104.pdf
    and
    http://www.oracle.com/technology/products/oracle9i/pdf/9idb_rel2_prod_fam.pdf
    hope tat helps
    André

Maybe you are looking for

  • 4MOT / 1 / 40000002: Left_Upper_Front

    Anybody know what is this error about? I found this on my Hardware test configuration...

  • Downloading Photoshop CS5 Extended Trial?

    I want to downlaod a trial of Photoshop, and have been to the following link http://www.adobe.com/cfusion/tdrc/index.cfm?product=photoshop&promoid=EBYEU. However, there doesn't seem to be a link to download or a button. I have also tried to download

  • Database controls and logging

    I'm try to use the @jc:log annotation with my database controls, but I'm not having any luck. Has anyone had success using this annotation? If so, can you tell me what I'm doing wrong? When I included the @jc:log annotation, Workshop complained that

  • Cruzer 2GB formatted on Snow Leopard won't mount on Windows XP/SP3

    Hi. I needed a flash drive yesterday. I found this 2GB stick for $10 at Walmart, brought it home, formatted it in disk utility as a FAT-32 using erase option without zeroing. I tried to transfer files to a friend in Windows XP as soon as I had comple

  • Custom processing for every Workflow event

    Hi, As soon as any workflow event is raised, I want to read data from my custom Z tables and do custom processing for that event. Thanks, Sudheer