Oracle Advanced Queueing  VS. JAVA

Dears,
i am facing a problem when integrating java with oracle while using advanced queueing.
The dequeue rate is very little 26 deq/second, is there any performance tuning mechanisms to be used or optimizations?
Thank you.

Try http://www.akadia.com/services/ora_advanced_queueing.html
they have some very straight forward , basic examples

Similar Messages

  • Does Oracle Advanced Queueing support JRockit?

    Does anyone know if Oracle Advanced Queueing supports JRockit (1.5 or 1.6),
    or better still, does anyone have experience using this?

    AQ is an in-database implementation of Java Messaging Service (JMS).
    With that in mind could you please ask your question again including specifics as to what you are thinking.

  • Oracle Advanced Queueing on 10G  dequeue options  FIRST_MESSAGE

    Has anyone used the " dbms_aq.first_message " in their dequeue options when dequeueing from a queue with oracle advanced queueing?
    If so, have yoiu noticed any change in performance time ? Has it slowed processing time in anyway?
    Just looking for anyone that has actually used this and their experience with it.
    Thanks,

    Its difficult to answer without understanding what your application is trying to achieve, PLSQL notification can handle certain aspects - e.g. fire off a procedure when new messages arrive.
    Have a look at the doc to see if it might help your scenario:
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14257/aq_opers.htm#sthref1315
    (10.7 Registering for Notification)
    Thanks
    Paul

  • Oracle Advance Queueing

    I am using DBMS_AQ (Advanced Queueing) , when trying to dequeue the messages from it, by providing a dequeue stored procedure that is being called by a java process the number of dequeue messages per second is below expectations; arround 33/sec.
    Please can any one tell me what is wrong, find below the stored procedure, if there is any optimization that can be made on it please tell me to speed up the dequeue process.
    CREATE OR REPLACE PROCEDURE SMPP.deq (
    outputmessage OUT smpp.sms,
    priority OUT NUMBER,
    enq_time OUT VARCHAR2,
    CORR IN VARCHAR2,
    waittime IN NUMBER
    AS
    dequeue_options DBMS_AQ.dequeue_options_t;
    message_properties DBMS_AQ.message_properties_t;
    message_handle RAW (16);
    v_err VARCHAR2 (255);
    BEGIN
    dequeue_options.WAIT := waittime;
    dequeue_options.visibility := DBMS_AQ.IMMEDIATE;
    dequeue_options.correlation := CORR;
    dequeue_options.navigation := DBMS_AQ.first_message;
    DBMS_AQ.dequeue (queue_name => 'SMPP.SMSINQ',
    dequeue_options => dequeue_options,
    message_properties => message_properties,
    payload => outputmessage,
    msgid => message_handle
    priority := message_properties.priority;
    enq_time :=
    TO_CHAR (message_properties.enqueue_time, 'dd-mm-rr hh24:mm:SS');
    DBMS_OUTPUT.put_line (enq_time);
    DBMS_OUTPUT.put_line (outputmessage.msg_txt);
    DBMS_OUTPUT.put_line (message_properties.priority);
    EXCEPTION
    WHEN OTHERS
    THEN
    v_err := SUBSTR (SQLERRM, 1, 255);
    DBMS_OUTPUT.put_line (v_err);
    RAISE;
    END;
    /

    I haven't found much tuning opportunities by messing with dequeue options. Adding memory to the SGA tends to help. Also, creating mutliple queue tables for the queue tends to distribute io and may also help.

  • Oracle Advanced Queueing

    Can we dequeue the messages from oracle higher version into a lower version.
    we are enqueing into 8.1.6 and can we dequeue
    from this version to 8.0.5 and what are the additional features we cannot get.
    Can anybody pls help.
    Thanks,

    You can't create a message with a VARCHAR2 payload. It either has to be a RAW message, or a message of an object type.
    Of course, your object type can have VARCHAR2 attributes, but not VARCHAR2(40000) since the maximum for VARCHAR2 is 4000. It can be a CLOB attribute, in which case the message can be up to 4 gigabytes.

  • Data synchronization between apps using Advanced Queueing

    Dear you,
    I'm quite new to Oracle Advanced Queueing and looking at this for using now.
    I want to integrate our system (name A, Web application with Java technology, deployed on Ora AS 10g, using Oracle database) with an outside system (named B, .NET technology, using Sybase database) using Oracle Advanced Queuing.
    Could you please suggest the interfaces for both system A & B to access Advanced Queuing? What is the best to use: Java, JMS or HTTP/HTTPS/SMTP?
    Many thanks,
    K.N

    So we are talking EPMA Data Synchronization here.
    Are you able to limit decimal precision?
    The number provided in the error message is not negative -- can you please provide more details?
    Thank you,
    Todd Rebner

  • Oracle AQ, the Advanced Queueing Facility

    Hi all,
    Does someone have first hand experience using
    Oracle AQ, the Advanced Queueing Facility?
    I am primarily interested in understanding its reliability, usability and general industry acceptance.
    thx
    Kalpana Subramanian

    DBMS_XMLQUERY and DBMS_XMLSAVE are implemented in Java. Neither are part of XQuery. However XQuery does require the java componant since the XQuery parser is currently written in Java. So while we can execute XQuery without Java we currently cannot parse XQuery statements without Java.
    DBMS_XMLGEN and DBMS_XMLSTORE should be present in XE. They are almost 100% feature equivilant to XMLQUERY and XMLSAVE but are implemented in 'C' rather than java. For XML Generation (XMLQUERY/XMLGEN) you should also consider the SQL/XML operators (XMLElement, XMLAgg, XMLForest, XMLAttributes).

  • Deadlock using Advanced Queueing and OC4J

    We develop an application which extensively uses JMS. We use Advanced Queueing as JMS provider (Oracle9i 9.2.0.3.0 and OC4J 9.0.3). In our application we have message driven bean which listens on cerain queue and can send messages to other queues/topics as a result of processing received message. In this scenario we sometimes get a java-level deadlock.
    An example of such deadlock is here (taken from thread dump, jvm is sun 1.4.1_01):
    Found one Java-level deadlock:
    =============================
    "TaskManager":
    waiting to lock monitor 0x8ff45c (object 0x39db898, a oracle.jdbc.driver.OracleCallableStatement),
    which is held by "ApplicationServerThread-1"
    "ApplicationServerThread-1":
    waiting to lock monitor 0x8ff43c (object 0x39e4de8, a oracle.jdbc.driver.OracleConnection),
    which is held by "TaskManager"
    Java stack information for the threads listed above:
    ===================================================
    "TaskManager":
    at oracle.jdbc.driver.OracleCallableStatement.close(OracleCallableStatement.java:980)
    - waiting to lock <039DB898> (a oracle.jdbc.driver.OracleCallableStatement)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.jdbc.driver.OracleConnection.close_statements(OracleConnection.java:2333)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.jdbc.driver.OracleConnection.close(OracleConnection.java:1412)
    - locked <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at com.evermind.sql.DriverManagerPooledConnection.close(DriverManagerPooledConnection.java:247)
    - locked <039DC320> (a com.evermind.sql.DriverManagerPooledConnection)
    at com.evermind.sql.OrionPooledDataSource.removeCache(OrionPooledDataSource.java:559)
    - locked <08A67AF0> (a com.evermind.sql.OrionPooledDataSource)
    at com.evermind.sql.OrionPooledDataSource.run(OrionPooledDataSource.java:505)
    at com.evermind.sql.DriverManagerXADataSource.run(DriverManagerXADataSource.java:195)
    at com.evermind.util.TaskManager.run(TaskManager.java:181)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:536)
    "ApplicationServerThread-1":
    at oracle.jdbc.driver.OracleConnection.getDescriptor(OracleConnection.java:2549)
    - waiting to lock <039E4DE8> (a oracle.jdbc.driver.OracleConnection)
    at oracle.sql.StructDescriptor.createDescriptor(StructDescriptor.java:132)
    at oracle.jpub.runtime.MutableStruct.toDatum(MutableStruct.java:128)
    at oracle.jms.AQjmsObjectMessage_C.toDatum(AQjmsObjectMessage_C.java:45)
    at oracle.jdbc.driver.OraclePreparedStatement.setORAData(OraclePreparedStatement.java:2700)
    - locked <039DB898> (a oracle.jdbc.driver.OracleCallableStatement)
    at com.evermind.sql.OrclCallableStatement.setORAData(OrclCallableStatement.java:732)
    at oracle.jms.AQjmsProducer.enqueue(AQjmsProducer.java:837)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at oracle.jms.AQjmsProducer.publish(AQjmsProducer.java:1366)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at oracle.jms.AQjmsProducer.publish(AQjmsProducer.java:1216)
    - locked <091DBC40> (a oracle.jms.AQjmsProducer)
    at com.abilitydev.slovalco.jms.dispatcher.alarm.AlarmMessageDispatcher.dispatchMessage(AlarmMessageDispatcher.java:229)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:51)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.dispatcher.DispatcherWrapper.dispatchMessage(DispatcherWrapper.java:49)
    at com.abilitydev.slovalco.jms.handlers.PotDataHandler.handleMessage(PotDataHandler.java:40)
    at com.abilitydev.slovalco.jms.ObjectMessageBean.onMessage(ObjectMessageBean.java:95)
    at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:141)
    at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:769)
    at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:929)
    at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:797)
    at java.lang.Thread.run(Thread.java:536)
    Any suggestions?
    Thanks, Marcel

    Marcel --
    This sounds like something that you'd want to pursue with the Oracle support folks.
    Is it possible for you to test the application using the OC4J 904 Developer Preview and see if the problem reproduces?
    btw -- are you using a tool to pull the information from the thread-dump? I noticed the line "Found one Java-level deadlock:" which looks like output from a tool. Just interested that's all.
    cheers
    -steve-

  • Oracle Spatial 10g R2 Java API

    Hi All,
    I have a JAVA tool said to be written for Oracle Spatial 10g R2 Java API which uses for example the class oracle.spatial.georaster.JGeoRaster. I have to port it to 11g R2. The tool is definitely written for an earlier version, because compilation fails on for example JGeoRaster.getProperties() method which is not present in the new API. For this new API I have a fine Javadoc documentation here:
    http://download-llnw.oracle.com/docs/html/E11829_01/
    I have searched for a similar one for 10g R2 but found only like
    http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14373/toc.htm
    which misses the oracle.spatial.georaster package. Is there such a package and if so, where can I find docs for it?
    thank you in advance, best regards: Balázs Bámer

    Hi Balázs,
    the GeoRaster Java API was first released with 11gR2. Your first link points to that, or this link:
    http://download.oracle.com/docs/cd/E11882_01/appdev.112/e11829/toc.htm
    your second link points to 10g Oracle Spatial Java API, which doesn't include any GeoRaster related API. your tool might have been developed based on the old INTERNAL georaster jar file, which is not supposed to be used by your java program. But if you do want the api doc, you can run javadoc or jdeveloper to find out the api from the old sdogr.jar file.
    jeffrey

  • No Oracle Advanced PL/SQL Developer OCP in June UK Training Leaflet?

    Oracle have out of the kindness of it's heart :x (and desire to avail of bigdelboy's gbp ;\ ) sent bigdelboy an Oracle (UK/Eire) Training Courses June-October 2009.
    This training course leaflet also references certifications.
    Now interestingly there is no reference to the Oracle Advanced PL/SQL Developer Certified Professional on this :(
    There is mention of the following 4 training courses wrt certs:
    Oracle AS 10g : portal - build corporate portals
    Oracle AS 10g : portal - build build portlets with PL/SQL
    Oracle forms developer 10g: build internal applications
    Oracle Reports Developer 10g: build reports
    And looking at this bigdelboy also noticed ?:| .....
    ... to top it all, as of the time of this post the Oracle PL/SQL developer and forms Page currently at:
    [http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=155]
    seems to be showing incorrect info ...
    It shows Advanced Pl/SQL developer OCP being obtainable by:
    1z0-051(or friends)+1z0-147+1z0-144 (1z0-144 is not shown explicitly but the link points to it).
    rather than what bigdelboy suspects is correct.
    1z0-051(or friends)+1z0-144(or 1z0-147)+1z0-146
    Anyway bigdelboy wonders if mediaguy has been a little slow on the announcements or has bigdelboy totally misunderstood :D
    Edited by: bigdelboy on 13-Jun-2009 15:14 (Big big Typo(s))

    Hello, core Tech Delivery Manager for UK here - Claire
    Noticed your comments re new printed schedule - just to say Dates here correct at going to print, but things change as we go.
    For exmaple - We also have a new partner in Ireland who's training dates can be found on IE education website on http://education.oracle.com, not on printed schedule.
    New dates and courses come out all year (new Oracle 11g Weblogic middle tier courses will be next to hit the shelves, followed by 11gR2 New Features for Administrators etc)...so it is always best to use Printed schedule as a guide only, and it should entice you to our UK website for OU, to check latest dates, locations and prices, most of which should match ok...but there will be a lot more on website. You can also call +0845 777 7711.
    You are right the PLSQL OCP is not on the printed schedule - I am glad they have added this though - the exam is currently in Beta from what I understand, but regardless I took the decision given the limited amount of space and huge variety of middleware offerings, to include more learning paths such as Java Developer, Web Admin and App Developer (you will see APLS listed as a course there, and I ensured it was one of the main listed unfer the DB&Lang section.)
    We now teach 11g version of Advanced PLSQL.
    Forms , Reports and Portal still have Customer Demand in UK and IE hence their inclusion too - not all companies have upgraded to latest Oracle technology yet, which is why we still run a lot of 10g based DB courses in parallel to 11g - most customers plan to upgrade from 9i/10g straight to 11gR2.
    Hence, it is wise to include courses that will sell, not just the latest courses ..which could alienate potential customers of OU !
    You are totally right about the exams though - I notice it should be 1z0-051(or friends)+1z0-144(or 1z0-147)+1z0-146 as you say below, so I have emailed marketing et al to see if Global will change the website (which is centrally controlled from US).
    Do let us know anything else you can report, Id be happy to help if I can...though I wont leave my phone number on here if that's ok!

  • Urgent : Hoe to connect to a ORACLE database throught WEBDYNPRO JAVA

    HI All
    i am very new to Developer Studio,
    i want to connect to an oracle database through wedynpro java.
    i have seen some tutorials on SDN. i know something about adding external JARs and OJDBC .
    Can anyone send me the sample code to connect to a database
    <b>very urgent</b>
    Thanks in advance
    Sushma

    Hi Sushma
    Ask your system Admin for servername,portnumber of database server
    Connection conn=null;
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    conn =DriverManager.getConnection ("jdbc:oracle:thin:@<servername>:<portnumber>:DB","uname", "pwd");
    Statement stmt=conn.createStatement();
    ResultSet rs=stmt.executeQuery("select * from <tablename>"); // select statment
    while(rs.next())
    IXXElement nodeConnection=wdContext.createXXElement(); //creating a node to store the data from oracle
    nodeConnection.setYY(rs.getInt("YY")); // setting the values into input fields
    nodeConnection.setAA(rs.getInt("AA"));
    nodeConnection.setBB(rs.getInt("BB"));
    wdContext.nodeXX().addElement(nodeConnection); // adding the node
    catch(Exception ex)
    finally
    try
    conn.close(); // closing the connection
    catch(Exception e)
    welcome to SDN and All the best from SDN Webdynpro JAVA
    Regards
    Chaitanya.A

  • How do you query Oracle RDF database using Java program?

    Does anyone know how to get data out of the oracle RDF database using Java?
    I'm running the following java code and it returns basically null values. My guess is that the get_triple() function returns a dataset other than resultset. I've tried searching the Oracle web site. Am I supposed to be using CLOB object? Any help would be appreciated. Thanks
    sql = "SELECT a.triple.GET_TRIPLE() AS triple FROM family_rdf_data a";
    ResultSet rs = stmt.executeQuery( sql ) ;
    while ( rs.next() )
    System.out.println( rs.getString(1) ) ;
    rs.close() ;

    get_triple() returns an object, and the code would be different from the code of retrieving a string. Some sample code for retrieving objects is at http://www.oracle.com/technology/sample_code/tech/java/sqlj_jdbc/files/advanced/advanced.html
    get_subject(), get_property() return strings so the code below should work. get_object() returns a CLOB so different handling would be required and there is some sample code at the link above.
    Melli

  • JPA + Oracle Advanced Queues

    Hi,
    Has anyone managed to share a transaction between the toplink JPA implementation and the Oracle Advanced Queues interface (which uses jdbc; java.sql.connection) in a J2SE environment?
    Running both in a J2EE environment is working fine, as both of them are using the JTA provided by OC4J.
    I've been trying to use JOTM as a lightweight JTA provider, but without any success at this point. JPA is using the datasource created by jotm (that includes the jotm transactionmanager), but it seems like JTA transactions are being ignored by the EntityMaanger at this point...
    regards,
    Bert

    Hi! I'm not a dev, but I know for sure ODP.NET does not support AQ. You might wanna have a look at Oracle Object for OLE (OO4O). It supports AQ and can be used in both VB.NET and C# through COM Interop. Of course, the performances will not be as good as ODP.NET tho.
    Have a nice one.
    Mathieu Gauthier
    Development Team
    JCMB Technology Inc

  • Advanced Queueing and SQL in same transaction?

    Can Advanced Queueing operations and SQL operations be combined in one atomic transaction? I can't find any reference to this in the Oracle AQ documentation and none of the examples show this. In my application I'm having problems that seem like deadlock when I do combine AQ and SQL in the same transaction. However, when I place them in seperate transactions it works.
    null

    I am also looking for some examples of using SQL/PLSQL w/Advanced Queueing. We currently have the following scenario: One server has non-relational tables; another server has relational tables which house the same data in a relational format. We are looking for a way to migrate the non-relational data to the relational tables and keep the data updated when it changes in the non-relational tables.
    We had considered using materialized views, but, this was ruled out because the non-relational tables are created and dropped on a daily basis.
    My email: [email protected]
    Thanks for any input you may have!

  • Advanced Queueing and databases synchronization

    What kind of (application) problems could be solved by Advanced Queueing ?
    What about databases synchronization ( two Oracle Database Standard Edition One ) ?
    TANK YOU !

    AQ is intended for messaging. Messaging between applications, messaging between back-end and front-end.
    Synchronization would be a poor use of messaging. If you want synchronization then name your version number (all four places) and replication technology and we can point you in the right direction.
    For most situations I use:
    DBMS_RECTIFIER_DIFF or DBMS_COMPARISON
    http://www.morganslibrary.org/library.html

Maybe you are looking for

  • HT6312 How do I use Numbers, Mavericks, and sharing to collaborate with others who have PCs/Macs like I did last week?

    Last week I used numbers in a very efficient way to collaborate with colleagues. Yesterday I was required to upgrade to iCloud Drive in order for others to view my documents and edit them. Now I cannot use the Numbers application on my mac to update

  • 5s audio video to RCA equipped TV adapter/converter

    I have a 4S and want to upgrade to the 5s.  My 4S allows my to transmit audio and video (e.g., Netflix) to my old RCA plug-equipped TV via a Skiva av adapter.  Is there an adapter/converter that will allow 5s to do the same?  That would be HDMI conve

  • Problems with upgrade to Mac OS X 10. 5. 4

    I have just upgraded to 10.5.4. When I tried to use Aperture 2.1 this morning I got the message: "The installed graphics card does not meet the minimum requirements for Aperture." My graphic card is a NVIDA GeForce 7800 GT and it worked fine with 10.

  • Photo booth crashes on MacBook Pro

    Looks like this problem existed in 2008 and still exists.  Should I just go back to PC's? This is stupid really stupid.  This is one of the reasons I bought a Mac (for stability) and one of their own products does not work on their computer? The prob

  • How do I combine two arrays into one?

    I am trying to combine two byte arrays into one. What function do I use that will put in the information in the same order just combined?