Topic
  • 4 replies
  • Latest Post - ‏2008-04-15T18:13:31Z by SystemAdmin
SystemAdmin
SystemAdmin
3105 Posts

Pinned topic Problem using new driver with DB2 UDB 7.2

‏2008-04-13T05:02:15Z |
It seems that I can connect to the database using a url like jdbc:db2://<host>:<port>/database using the "new" driver from db2jcc.jar (com.ibm.db2.jcc.DB2Driver). From my tool, I get a connection message like:

From:
OS Name: Windows XP
OS Arch: x86
OS Version: 5.1

To:
DB2/6000
DB2 UDB 7.2

Using:
IBM DB2 JDBC Universal Driver Architecture
3.50.152

But when I try to run a query (SELECT * FROM SCHEMA.TABLE), I get an error like
[jcc][t4][10335][10366][3.50.152] Invalid operation: Connection is closed. ERRORCODE=-4470, SQLSTATE=08003 (08003 = The connection does not exist.)

From my code, after checking that connection is not null and is not closed I call preparedStatement.setObject() and I get an Exception like:
com.ibm.db2.jcc.b.hm: [jcc][20104][11269][3.50.152] The DDM command is not supported. Unsupported DDM command code point: 0x2014. ERRORCODE=-4499, SQLSTATE=58014 (58014 = "The DDM command is not supported.") (-4499 = "fatal error occurred that resulted in a disconnect."
"Explanation: One possible cause is that a network error caused a socket to disconnect.") (But this happens consistently, not randomly or intermittently.)

DDM = Distributed Data Management but I don't understand what this error message is trying to tell me.

The exact same query and method call works in both the tool and also in the code when I use the old COM.ibm.db2.jdbc.app.DB2Driver (from db2java.zip) with no problem.

I can connect to other databases using the new driver. For example,

DB2
DSN07012

IBM DB2 JDBC Universal Driver Architecture
3.50.152

has no issues.

I notice that in the problem case I see:
DB2/6000
DB2 UDB 7.2


and in the working case (using another database) I see:
DB2
DSN07012


When I connect to the problem database using the old driver, I see:

DB2/6000
SQL07028

I'm not sure whether that is significant or not.

Does anyone here have any idea what the root of the problem could be?
Updated on 2008-04-15T18:13:31Z at 2008-04-15T18:13:31Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    3105 Posts

    Re: Problem using new driver with DB2 UDB 7.2

    ‏2008-04-13T05:48:26Z  
    I thought I would try with a different version of the "new" driver and got the following

    DB2/6000
    SQL07028

    IBM DB2 JDBC Universal Driver Architecture
    2.10.52 (driver version)

    SELECT * FROM SCHEMA.TABLE;

    [Error Code: -4499, SQL State: 58016] The DDM parameter is not supported. Unsupported DDM parameter code point: 0x2450 DB2ConnectionCorrelator: G94CCA24.K913.0369C3054030
    ... 1 statement(s) executed, 0 row(s) affected, exec/fetch time: 0.703/0.000 sec [0 successful, 0 warnings, 1 errors]
  • SystemAdmin
    SystemAdmin
    3105 Posts

    Re: Problem using new driver with DB2 UDB 7.2

    ‏2008-04-14T20:00:44Z  
    marilynd@us.ibm.com wrote:
    It seems that I can connect to the database using a url like jdbc:db2:// : /database using the "new" driver from db2jcc.jar (com.ibm.db2.jcc.DB2Driver). From my tool, I get a connection message like:

    From:

    OS Name: Windows XP

    OS Arch: x86

    OS Version: 5.1

    To:

    DB2/6000

    DB2 UDB 7.2

    Using:

    IBM DB2 JDBC Universal Driver Architecture

    3.50.152

    But when I try to run a query (SELECT * FROM SCHEMA.TABLE), I get an error like

    jcc t4 10335 10366 http://3.50.152 Invalid operation: Connection is closed. ERRORCODE=-4470, SQLSTATE=08003 (08003 = The connection does not exist.)

    From my code, after checking that connection is not null and is not closed I call preparedStatement.setObject() and I get an Exception like:

    com.ibm.db2.jcc.b.hm: jcc 20104 11269 http://3.50.152 The DDM command is not supported. Unsupported DDM command code point: 0x2014. ERRORCODE=-4499, SQLSTATE=58014 (58014 = "The DDM command is not supported.") (-4499 = "fatal error occurred that resulted in a disconnect.

    Explanation: One possible cause is that a network error caused a socket to disconnect.") This happens consistently, not randomly or intermittently.

    DDM = Distributed Data Management but I don't understand what this error message is trying to tell me.

    The exact same query and method call works in both the tool and also in the code when I use the old COM.ibm.db2.jdbc.app.DB2Driver (from db2java.zip) with no problem.

    I can connect to other databases using the new driver. For example,

    DB2

    DSN07012

    IBM DB2 JDBC Universal Driver Architecture

    3.50.152

    has no issues.

    I notice that in the problem case I see:

    DB2/6000

    DB2 UDB 7.2

    and in the working case I see:

    DB2

    DSN07012

    I'm not sure whether that is significant or not.

    Does anyone here have any idea what the root of the problem could be?
    You are using DB2 V7.2 which went out of support a few years ago. Please
    try more current one (currently supoorted are: V8.x, V9.1 and V9.5).
    DDM code point 2014 is: EXCSQLSET - Set SQL Environment
    DDM code point 2450 is: SQLATTR - SQL Attributes

    Jan M. Nelken
  • SystemAdmin
    SystemAdmin
    3105 Posts

    Re: Problem using new driver with DB2 UDB 7.2

    ‏2008-04-15T17:41:12Z  
    marilynd@us.ibm.com wrote:
    It seems that I can connect to the database using a url like jdbc:db2:// : /database using the "new" driver from db2jcc.jar (com.ibm.db2.jcc.DB2Driver). From my tool, I get a connection message like:

    From:

    OS Name: Windows XP

    OS Arch: x86

    OS Version: 5.1

    To:

    DB2/6000

    DB2 UDB 7.2

    Using:

    IBM DB2 JDBC Universal Driver Architecture

    3.50.152

    But when I try to run a query (SELECT * FROM SCHEMA.TABLE), I get an error like

    jcc t4 10335 10366 http://3.50.152 Invalid operation: Connection is closed. ERRORCODE=-4470, SQLSTATE=08003 (08003 = The connection does not exist.)

    From my code, after checking that connection is not null and is not closed I call preparedStatement.setObject() and I get an Exception like:

    com.ibm.db2.jcc.b.hm: jcc 20104 11269 http://3.50.152 The DDM command is not supported. Unsupported DDM command code point: 0x2014. ERRORCODE=-4499, SQLSTATE=58014 (58014 = "The DDM command is not supported.") (-4499 = "fatal error occurred that resulted in a disconnect.

    Explanation: One possible cause is that a network error caused a socket to disconnect.") This happens consistently, not randomly or intermittently.

    DDM = Distributed Data Management but I don't understand what this error message is trying to tell me.

    The exact same query and method call works in both the tool and also in the code when I use the old COM.ibm.db2.jdbc.app.DB2Driver (from db2java.zip) with no problem.

    I can connect to other databases using the new driver. For example,

    DB2

    DSN07012

    IBM DB2 JDBC Universal Driver Architecture

    3.50.152

    has no issues.

    I notice that in the problem case I see:

    DB2/6000

    DB2 UDB 7.2

    and in the working case I see:

    DB2

    DSN07012

    I'm not sure whether that is significant or not.

    Does anyone here have any idea what the root of the problem could be?
    You are using DB2 V7.2 which went out of support a few years ago. Please
    try more current one (currently supoorted are: V8.x, V9.1 and V9.5).
    DDM code point 2014 is: EXCSQLSET - Set SQL Environment
    DDM code point 2450 is: SQLATTR - SQL Attributes

    Jan M. Nelken
    You are using DB2 V7.2 which went out of support a few years ago. Please try more current one (currently supoorted are: V8.x, V9.1 and V9.5).
    Unfortunately, the chances that the client will pay to upgrade their database so that I can upgrade my driver for all clients simultaneously are slim to none.

    DDM code point 2014 is: EXCSQLSET - Set SQL Environment
    DDM code point 2450 is: SQLATTR - SQL Attributes

    Thank you for the information ... Are these Attributes and Environment set by the driver?
  • SystemAdmin
    SystemAdmin
    3105 Posts

    Re: Problem using new driver with DB2 UDB 7.2

    ‏2008-04-15T18:13:31Z  
    You are using DB2 V7.2 which went out of support a few years ago. Please try more current one (currently supoorted are: V8.x, V9.1 and V9.5).
    Unfortunately, the chances that the client will pay to upgrade their database so that I can upgrade my driver for all clients simultaneously are slim to none.

    DDM code point 2014 is: EXCSQLSET - Set SQL Environment
    DDM code point 2450 is: SQLATTR - SQL Attributes

    Thank you for the information ... Are these Attributes and Environment set by the driver?
    marilynd@us.ibm.com wrote:

    Unfortunately, the chances that the client will pay to upgrade their database ...

    This implies that client wants to remain on unsupported software. That
    is their business decision I guess.

    Are these Attributes and Environment set by the driver?

    Most likely they are. One way to find out what is going on would be to
    look at trace - if you are on supported level of software.

    I do not think you need to update your driver - you were using driver
    3.10.152 which is V9.5 GA and/or 2.10.52 which is V8 at FP14 - both are
    fully supported.

    Your problem is that you are trying to connect to back level database -
    V9.5 client cannot connect to V7 database.

    V8.1 client could connect - but with all documented restrictions.

    Another problem is that yoiu are using JCC driver - which V7 database
    does not know anything at all.

    You may have better luck with (deprecated - possibly removed from future
    releases!) legacy app driver instead of JCC driver.

    Jan M. Nelken