XI adapter polling issue & JDBC  / DB2 driver connection timeout properties

Hello Group,
We have a long running issue with our XI 7.0 system running on iseries. (V5R3) The issue occuring is that our XI adapters stop polling and the only resolution is to restart the J2EE engine or to resart the adapter framework services.
We have had several OSS messages open on this subject for over a year and are going round in circles with the a number of different SAP consultants.
The one topic that we keep coming back to is that we are being asked to set DB2 driver connection timeout properties. We are using the toolbox driver and have upated to the latest JTopen driver, but have not managed to find any inofrmation on how to set the timeout parameter. Does anyone know where the timeout parameter set?
Has anyone experienced polling issue like this before and how did you resolve?
SAP referred to the SAP note 1078420 - XI/PI JDBC Adapter: Setting JDBC driver properties for DB which is for Oracle, but this will give an idea of what timeout parameters SAP are asking about.
Extract of the note is below:-
Symptom
This note gives an option to set JDBC driver properties while acquiring a DB connection. When connecting to DB using JDBC adapter there are instances
where DB connection take a long time to establish connection. Some times call made to Driver will hang permanently. Setting driver properties would resolve this problem.
More Terms
Connection timeout, time out, query timeout
Cause and Prerequisites
Solution
In the advanced mode table section of sender channel and receiver channel configurations, we can set driver properties for each DB connection. Any
such property would have to contain prefix 'driver:'(with out quotes) For example, for Oracle Database JDBC thin driver 10.2.0.3 version, the
property oracle.jdbc.ReadTimeout helps to set read timeout while reading from the socket. Also for setting login time out in Oracle, we use
oracle.net.CONNECT_TIMEOUT. To set these two properties use as follows:
driver:oracle.jdbc.ReadTimeout 1000
driver:oracle.net.CONNECT_TIMEOUT 1000
(The TimeOut Driver properties like ReadTimeout and CONNECT_TIMEOUT are in milliseconds)
Refer to your DB documentation/ JDBC driver documentation on this. Please note that properties can vary from each driver version. For instance, some
of properties of Oracle JDBC thin Driver 10.2.0.3 properties may not be present in older version drivers. Please contact DB vendor for the complete
list of driver properties. In addition to above, we also provide another parameter for query time out.
sqlquerytimeout (prefix 'driver:' is not required) is the parameter that is to be used for SQL query time out. This is case-sensitive and should be
configured as positive integer value in seconds(greater than 0).
Any help on this would be much appreciated.
With regards,
Steven

Hello,
I am not talking about the XI timeouts. But the timeouts which can be used to get the connection timeouts for DB2/AS400 databases.
So please provide that information.
THanks,
soorya

Similar Messages

  • Jdbc:odbc driver connection issues

    I need to use the jdbc:odbc driver to access a non-oracle db from a jsp. I am sure my dsn is fine as I can use a non JSP java app to connect to the odbc db. I have loaded the sun.jdbc.odbc classes in the schema I am working in as it is not loaded by default in 9.2.0.7 currently I am on a windows system. I have found the following:
    public static void doTest()throws Exception{
    // load the local Oracle Driver
    DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
    connLocalOracle = new OracleDriver().defaultConnection();
    // load the odbc driver
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    if I exit at this point the jsp does not through an exception
    however if I include the line:
    connODBC = DriverManager.getConnection(odbcURL,"XX","XX");
    I get the error:
    SQL> execute do_jdbc_odbc_test;
    BEGIN do_jdbc_odbc_test; END;
    ERROR at line 1:
    ORA-29532: Java call terminated by uncaught Java exception:
    java.lang.UnsatisfiedLinkError: sun.jdbc.odbc.JdbcOdbc.allocConnect
    ORA-06512: at "TU1.DO_JDBC_ODBC_TEST", line 0
    ORA-06512: at line 1
    So I am assuming I am loading the driver but the driver is not talking to the odbc configuration in windows.
    What permissions would I need to give to the user to allow this connection to occur?
    How can I find out if this is indeed the case?
    If not how can I make this connection happen using ODBC?

    If by jsp you mean Java Stored Procedure, the hybrid JDbc-ODBC stack won't work. You can connect to non-Oracle RDBMS from within Java in the database by using a pure Java JDBC driver of the target RDBM. Fwiw, a complete example connecting to SQl Server from with JavaDB is described in my upcoming book. (See http://db360.blogspot.com/)
    Kuassi

  • OSB DB Adapter Polling Issue

    Hello Everybody,
    Requirement
    I am doing DB Adapter polling in OSB.I have a db adapter which polls order table whenever there is a record with status='N'.The OSB component is on single node of Weblogic Server.
    1.The db adapter picks the order data with status='N' in the proxy service
    2.It transforms to webservice xsd
    3.Invokes a webservice.
    4.The webservice returns acknowledgement number.
    5.The order table should be updated with status 'Z' and attribute1=acknowledgement number
    OSB Service Design
    1.Proxy service calls business service to poll the order table
    2.Converts the payload to the xsd format required by target
    3.Invokes the webservice on target
    4.Receives acknowledgement number
    5.calls a plsql procedure which updates all the records within this batch with the acknowledgement number and status='Z'
    My configurations in db adapter
    Logical delete option in db adapter.
    Unread Value :'N'
    Read Value : 'A'
    Polling frequency : 300 seconds
    no of databse rows per XML document : 10
    Database rows per transaction : 10
    Issue
    1.My process after getting the acknowledgement number it updates the status with Z and attribute1=acknowledgement number.At the of this transaction I am seeing that the status is being updated by
    the adapter to 'A' based on read value.I want the read value only to be updated initially but as soon as my OSB process picks it for further processing it should not update again.How can i prevent
    the status from getting updated to 'A'.
    2.I have 40 records in order table.Per the database rows per transaction it should process 10 records at a time and for each batch of 10 i should get one acknowledgement number.Instead i see that
    all the 40 records are updated with the same acknowledgement number.Kindly help as to how I can resolve this situation.
    Thanks & Regards,
    Radha

    Hi Arik,
    I tried setting the property(idempotent) in jca file of the polling adapter and it gave me below error.Kindly help
    <adapter-config name="EBS_FETCHDATA" adapter="Database Adapter" wsdlLocation="EBS_FETCHDATA.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/newebs" UIConnectionName="EBS" adapterRef=""/>
    <endpoint-activation portType="EBS_FETCHDATA_ptt" operation="receive">
    <activation-spec className="oracle.tip.adapter.db.DBActivationSpec">
    <property name="DescriptorName" value="EBS_FETCHDATA.XxcmfOtmOrderHdrIfaceTmp"/>
    <property name="QueryName" value="EBS_FETCHDATASelect"/>
    <property name="MappingsMetaDataURL" value="EBS_FETCHDATA-or-mappings.xml"/>
    <property name="PollingStrategy" value="LogicalDeletePollingStrategy"/>
    <property name="MarkReadColumn" value="OTM_INTERFACE_STATUS"/>
    <property name="MarkReadValue" value="A"/>
    <property name="MarkUnreadValue" value="N"/>
    <property name="PollingInterval" value="60"/>
    <property name="MaxRaiseSize" value="10"/>
    <property name="MaxTransactionSize" value="300"/>
    <property name="NumberOfThreads" value="1"/>
    <property name="ReturnSingleResultSet" value="false"/>
    <property name="idempotent" value="false"/>
    </activation-spec>
    </endpoint-activation>
    </adapter-config>
    ---------------------ERROR---------------
    Invalid JCA transport endpoint configuration, exception: javax.resource.ResourceException: BINDING.JCA-12532 Cannot set JCA WSDL Property. Error while setting JCA WSDL Property. Property setIdempotent is not defined for oracle.tip.adapter.db.DBActivationSpec Please verify the spelling of the property.
    Thanks,
    Radha

  • Jdbc DB2 multiple Connection in CRON

    I need to run a Java app via CRON (SunOS) that copies data from tables in one database and inserts them into identical tables in a second database. The databases are in different instances. For the CRONS I've written that work with one database - I usually set environment vars (DB2INSTANCE, INSTHOME) in the shell script and it finds the database but that doesnt work with two databases in different instances. I thought maybe I could change the connection code to be more specific about where to find the database - but I can't figure out how. Here is the current connection code (it is the same except for dbname, username, password for both databases).
    java.sql.Connection con = null;
    Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
    con=DriverManager.getConnection("jdbc:db2:dbname","username","passwd");
    con.setAutoCommit(false);
    con.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);
    Is there some way I can specify host and/or port? Please help.
    Thank you in advance
    ...annie

    You might not be able to do that with you jdbc driver.
    If it is possible then you probably need to look into the specifics of how the connection works. Right now you are defining something in the OS (the env vars) that specifies some connection information. You need to figure out how to do that entirely in the connection strings.
    You might search this sight using the key works "connetion-less" and "DB2". That might help. If not then search just for "connection-less" and start looking through IBM docs to see if it is possible.

  • Jdbc thin driver connect oracle as internal

    I need to connect to Oracle as Internal using jdbc driver, is there a way we can do this using jdbc thin driver. Actually I don't want to pass username and password as it will be harcoded in a properties file.
    Please let me know.

    Hi Minol,
    Have a look at this code example that shows how to Connect to Database as internal ( as sysdba ). In this code sample the properties are hard-coded, you can supply these Properties by loading them from a properties file.
    Connecting to Oracle Database with DBA privileges
    http://myjdbc.tripod.com/basic/codeindex.html
    The code snippet to load properties from a properties file
    //Import IO related classes
    import java.io.IOException;
    // Necessary support classes
    import java.util.Properties;
    import java.util.Enumeration;
    import java.util.ResourceBundle;
       * This method reads a properties file which is passed as
       * the parameter to it and load it into a java Properties
       * object and returns it.
       * @param file File path
       * @return Properties The properties object
       * @exception IOException if loading properties file fails
       * @since 1.0
      public static Properties loadParams(String file)
          throws IOException {
        // Loads a ResourceBundle and creates Properties from it
        Properties     prop   = new Properties();
        ResourceBundle bundle = ResourceBundle.getBundle(file);
        // Retrieve the keys and populate the properties object
        Enumeration enum = bundle.getKeys();
        String      key  = null;
        while (enum.hasMoreElements()) {
          key = (String) enum.nextElement();
          prop.put(key, bundle.getObject(key));
        return prop;
      }Regards
    Elango.

  • Oracle 7 - JDBC Thin driver - connect - compatibility

    When logging on to an Oracle server v.7.2.3.0.0 with JDBC-thin
    driver (classes111.zip), I get the message:
    ORA-01017 invalid username/ password; logon denied
    even if the password, username and connection string is correct.
    The connection worked OK until some work was performed on the
    database and some changes with SQL*Net was done.
    I thought the driver worked OK with all versions of SQL*Net
    listeners?
    The database can be connected to with SQL*Plus.
    null

    I have the same problem trying to connect to database cache on iAS with iAS.

  • What jar contains weblogic.jdbc.pool.Driver connection pool class?

    Hi all,
    I am trying to use the JDeveloper IDE to generate code that I'll deploy on WebLogic
    6.1.
    I want to add the necessary files to the JDeveloper classpath so that during development
    it can use my
    weblogic connection pool. I've looked all over and can't seem to find it. It's
    not in weblogic.jar. Anyone know
    what file contains weblogic.jdbc.pool.Driver?
    Thanks in advance,
    Norm

    Thanks. I don't know how I missed it in the first place.
    "Sree Bodapati" <[email protected]> wrote:
    weblogic.jar
    sree
    "Norm Heske" <[email protected]> wrote in message
    news:3ba246c2$[email protected]..
    Hi all,
    I am trying to use the JDeveloper IDE to generate code that I'll deployon
    WebLogic
    6.1.
    I want to add the necessary files to the JDeveloper classpath so thatduring development
    it can use my
    weblogic connection pool. I've looked all over and can't seem to findit.
    It's
    not in weblogic.jar. Anyone know
    what file contains weblogic.jdbc.pool.Driver?
    Thanks in advance,
    Norm

  • JDBC thin driver connection problems using cybersafe authentication

    Hi
    i am trying to use jdbc thin driver to connect to oracle 8.1.7 DB using ASO and cybersafe authentication.
    Question:
    Does the oracle jdbc thin driver in 8.1.7.0.0 support third-party authentication features supported by Oracle Advanced Security--such
    as those provided by RADIUS, Kerberos, or SecurID
    i am getting the following error.
    Exception in thread "main" java.sql.SQLException: invalid arguments in call
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java)
    at oracle.jdbc.dbaccess.DBError.check_error(DBError.java)
    at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java)
    at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java)
    at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.ja
    va)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java)
    at java.sql.DriverManager.getConnection(DriverManager.java:517)
    at java.sql.DriverManager.getConnection(DriverManager.java:146)
    at ASOJdbc.main(ASOJdbc.java:43)
    Following is the program i am trying.
    public class ASOJdbc {
         public static void main(String args[]) throws SQLException {
              String url = "jdbc:oracle:thin:@son1129:1521:sonias";
              Connection con;
              String query = "select EMPNO, ENAME from EMP";
              Statement stmt;
              // ASO Stuff
                   Properties props = new Properties();
                   try {
                   props.put("oracle.net.authentication_services", "CYBERSAFE");
                   props.put("oracle.net.authentication_gssapi_service", "oracle/[email protected]");                    
                   props.put("oracle.net.encryption_types_client", "DES");
                   props.put("oracle.net.encryption_types_server", "DES");               
                   props.put("oracle.net.crypto_seed", "4fhXXXX");               
                   } catch (Exception e) { e.printStackTrace();
                   DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
                   // ASO
                   con = DriverManager.getConnection(url, props);
                   stmt = con.createStatement();
                   ResultSet rs = stmt.executeQuery(query);
                   stmt.close();
                   con.close();          
    jdk version: jdk 1.3.1
    Oracle jdbc driver information, which i obtained as per Note 94091.1
    =============
    Database Product Name is Oracle
    Database Product Version is Oracle8i Enterprise Edition Release 8.1.7.1.1 - Production With the Partitioning option
    JServer Release 8.1.7.1.1 - Production
    JDBC Driver Name is Oracle JDBC driver
    JDBC Driver Version is 8.1.7.0.0
    JDBC Driver Major Version is 8
    JDBC Driver Minor Version is 1

    1. What JDBC Thin client Driver are you using? (version) If you don't know, open up the Manifest.
    2. the JDBC/OCI driver is a thick driver. It uses the oracle client, and therefore should read the tnsnames.ora
    3. You have yet to give us any ORA- errors, which would help immensely in troubleshooting.

  • Oracle JDBC Thin-Driver: Connection still valid (db still open)?

    Hi,
    I've got a problem with my program. The app opens a connection to an Oracle Database usingt the Oracle JDBC Thin.Driver. Everything works just fine but I can't figure out a way how to find out wheter the connection is still valid, e.g. if the database is still open?
    connection.isClosed() return always false :(
    Any help is appreciated.
    Thanks,
    Spaulding

    Hi oracle_guru,
    unfortunately it's not that easy. :(
    You can't just check for
    if(conn == null)since the connection won't realize when the db shuts down.
    Therefore I created a connection-watcher-thread which uses a prepared statement to check every once in while if the connection is still valid.
    Nevertheless, thanks for you reply,
    Spaulding

  • Thin Driver Connection Timeout

    I am having some odd problems with the JDBC thin driver (8.1.6). The problem is that when I attempt to make a connection to a server that isn't available or that has bad login information it takes several minutes to time out. I tried using the DriverManager's setLoginTimeout() method but it seems to ignore it.
    The problem is that when somebody using my system gets slow response time (when the database is loaded, for example) -- they keep clicking refresh and very quickly my JServ session limit is reached and the web server starts sending HTTP 500s...that's bad mmmkay.
    The java.sql docs say that setLoginTimeout is in seconds, I am passing 15 as the value but it clearly is taking at least 5 minutes to time out.
    Any thoughts? I am using Sun's 1.2 JDK on Linux (2.2.16 kernel).
    slag

    Would it be appropriate to submit a TAR on this issue? I'm thinking that it would be much easier for someone to just make a post here but I can go the long way ...
    slag

  • DB adapter polling issue-urgent

    Hi ,
    I am trying to poll for new or changed records from DB table using a DB adapter. I used a DB adapter with Poll for new or changed records in a table operation type and used a bpel process to write the changed records in a file adapter(using write file oeration). whenever i update a record or insert a new record it is not polling the chnaged record and instance is not getting created for the composite.
    Pls find below the .jca file of my Db adapter,
    <adapter-config name="pollDB" adapter="Database Adapter" wsdlLocation="pollDB.wsdl" xmlns="http://platform.integration.oracle/blocks/adapter/fw/metadata">
    <connection-factory location="eis/DB/SOADemo" UIConnectionName="SOADemo" adapterRef=""/>
    <endpoint-activation portType="pollDB_ptt" operation="receive">
    <activation-spec className="oracle.tip.adapter.db.DBActivationSpec">
    <property name="DescriptorName" value="pollDB.Studentdb"/>
    <property name="QueryName" value="pollDBSelect"/>
    <property name="MappingsMetaDataURL" value="pollDB-or-mappings.xml"/>
    <property name="PollingStrategy" value="LogicalDeletePollingStrategy"/>
    <property name="MarkReadColumn" value="DOB"/>
    <property name="MarkReadValue" value="PROCESSED"/>
    <property name="MarkReservedValue" value="LOCKED"/>
    <property name="MarkUnreadValue" value="UNPROCESSED"/>
    <property name="PollingInterval" value="5"/>
    <property name="MaxRaiseSize" value="1"/>
    <property name="MaxTransactionSize" value="10"/>
    <property name="NumberOfThreads" value="1"/>
    <property name="ReturnSingleResultSet" value="false"/>
    </activation-spec>
    </endpoint-activation>
    </adapter-config>
    can anyone pls help me in this issue?
    thanks & regards,
    Ayyadurai.M

    Sometimes the messages get rejected if they are not compliant with schema even before coming to the SCA Infrastructure, the rejected messages for the database adapter will be stored in the following location....
    Let's say if your composite name is TestDBPolling, and if the messages for that composite are rejected, they will be stored under the following location...
    C:\Oracle\Middleware\home_11gPS2\user_projects\domains\domain1\rejmsgs\soa_server1\TestDBPolling
    This is on my local machine...
    Let me know whether that helped you...
    Thanks,
    N

  • DB Adapter Polling Issues - causing  DB Locks

    Hi Experts,
    I am working on project in SOA Suite 11.1.1.6 environment.
    In my project I have used DB Polling which has following settings
    <property name="DescriptorName" value="XXXXXXXXXXX"/>
    <property name="QueryName" value="XXXXXXXXXXXXXXXXXXXXX"/>
    <property name="MappingsMetaDataURL" value="XXXXXXXXXXXXXXXXXXXX.xml"/>
    <property name="PollingStrategy" value="LogicalDeletePollingStrategy"/>
    <property name="MarkReadColumn" value="PROCESS_FLAG"/>
    <property name="MarkReadValue" value="P"/>
    <property name="MarkUnreadValue" value="Y"/>
    <property name="PollingInterval" value="20"/>
    <property name="MaxRaiseSize" value="1"/>
    <property name="MaxTransactionSize" value="10"/>
    <property name="NumberOfThreads" value="1"/>
    <property name="ReturnSingleResultSet" value="false"/>
    The problem is when I update 25 records, the last 5 records are not getting processed and its just stuck there. It just shows DB Adapter Instance in the Composite Instance and the record is locked.
    I am using Multi DataSource configuration with 3 Load Balancing Database Instances on SOA Clustered Environment. I have DISTRIBUTED POLLED flag checked in the DB Poller Adapter
    If I update records less than 20, the polling frequency then its working fine. If I update more than 20 then its causing issue of locks.
    Thanks in Advance

    Hi All,
    Issue resolved by setting the <property name="NumberOfThreads" value="1"/> value to 10
    Thanks

  • Mavericks 10.9-10.9.1 bug/issue/problem: external drives connected through thunderbolt or firewire are not put to sleep when iMac goes to sleep

    Previous to Mavericks (10.9 - 10.9.1) I've had no issues with external firewire or thunderbolt connected drives to be put to sleep. However, since Mavericks all of my external drives are not put to sleep when my iMac, or Mac Pro go to sleep.
    How can a company such as Apple, pushing people to have external devices like hard drives, is not on top of fixing this issue? Apple pushed for firewire and thunderbolt, thus All external drives I've owned are firewire. Because of speed. I bought thunderbolt adapters for firewire, and before Mavericks all worked great. Now that we have 10.9.1 update, this is still an issue!
    I'm aware of the temporary solution of connecting the drive through USB to make it work, this is not a solution, but a hack.
    Please let Apple know that this is a known issue, and there should be a fix for it. Everyone's data depends on it! Not only current external backups, but also external sensitive hard drives we rely on. Currently, the following makes are experiencing this issue: Lacie, OWC (Elite Pro), WD, Promise, Seagate, Toshiba, G-Drive.
    Other Apple Support Communities related thread:
    https://discussions.apple.com/thread/5486167?start=60&tstart=0
    https://discussions.apple.com/message/23541363
    External References:
    http://blog.macsales.com/21004-upgrade-to-mavericks-drama-free-with-owc
    http://forums.macrumors.com/showthread.php?t=1659332&page=3
    If anyone finds how to solve this issue, please help by posting the steps or solution.

    Same 2 issues with 10.9.3:
    External FireWire drive WILL NOT spin down when Mac goes to sleep.
    also
    External FireWire drive WILL NOT spin down for inactivity despite “Put hard disks to sleep when possible” is checked in energy saver.
    This has been going on since the launch of Mavericks and no solution found yet.
    USB ports work normally.

  • DB Adapter Polling Issue

    Hi All,
    I am working on a scenario something like this:
    I am polling an Oracle table and when certain flag is 'Y', I am selecting the record(s) and calling an external service. Then depending on the response from the external service, again updating the the same table which I am polling.
    As I have clustered environment, I am using distributed polling and polling strategy is logical delete. But it seems DB adapter is keeping some lock on the table for distributed polling, that's why I am not able to update the polled table.
    Please provide me some solution how to overcome the iisue.
    Thanks,
    Maitrayee

    Hi Ram,
    DbAdapter is transactional and it should not delete failed records...
    Ref docs here...
    http://docs.oracle.com/cd/E28280_01/integration.1111/e10231/adptr_db.htm#BABCIICF
    Cheers,
    Vlad

  • JDBC Thin driver connection

    Hi,
    I am trying to open a connection from Java using JDK 1.1.6 and the Oracle JDBC Thin drivers. My Oracle drivers register just fine. However, I get an exception which I catch saying "Security.couldn't connect to HOST with origin from." HOST is my local server name where I'm running Oracle 8.0.4.0.0 and OAS 4.0.8. My connection statement in my .java code is:
    Connecttion conn =
    DriverManager.getConnection("jdbc:oracle:thin@HOST:1521:orcl,"scott","tiger")
    I can connect just fine using sqlplus with the scott/tiger@orcl descriptor.
    How can I resolve this?

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by JDBC Development Team:
    Not sure whether this is the cause of the problem. There should be a ":" before the "@" sign in the connect string. That is,
    "jdbc:oracle:thin:@host"
    Please do let us know if this doesn't fix the problem
    <HR></BLOCKQUOTE>
    Thank you for pointing out the missing : before the @ symbol. I made that change. Still, I get the same message when the applet loads in my browser page. If I load the applet in appletviewer then I get the error message "checkconnect.networkhost1".

Maybe you are looking for