Search code examples
javajdbcinformix

Routine (get_data_type) can not be resolved


I've just updated the informix jdbc driver on my application (from 3.0 to V4.10.JC4DE) and the following error occurred, when trying to connect with informix 9.

java.sql.SQLException: Routine (get_data_type) can not be resolved.
    at com.informix.jdbc.IfxSqli.a(IfxSqli.java:3130)
    at com.informix.jdbc.IfxSqli.D(IfxSqli.java:3412)
    at com.informix.jdbc.IfxSqli.dispatchMsg(IfxSqli.java:2325)
    at com.informix.jdbc.IfxSqli.receiveMessage(IfxSqli.java:2250)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1485)
    at com.informix.jdbc.IfxSqli.executeStatementQuery(IfxSqli.java:1465)
    at com.informix.jdbc.IfxResultSet.a(IfxResultSet.java:211)
    at com.informix.jdbc.IfxStatement.executeQueryImpl(IfxStatement.java:1064)
    at com.informix.jdbc.IfxStatement.executeQuery(IfxStatement.java:236)
    at com.informix.jdbc.IfxDatabaseMetaData.getColumns(IfxDatabaseMetaData.java:3549)
    at com.mchange.v2.c3p0.impl.NewProxyDatabaseMetaData.getColumns(NewProxyDatabaseMetaData.java:3968)
    at org.hibernate.tool.hbm2ddl.TableMetadata.initColumns(TableMetadata.java:197)
    at org.hibernate.tool.hbm2ddl.TableMetadata.<init>(TableMetadata.java:58)
    at org.hibernate.tool.hbm2ddl.DatabaseMetadata.getTableMetadata(DatabaseMetadata.java:113)
    ... 54 more

The new driver works fine with Informix 11. Unfortunately, I have to support connection with Informix 9.


Solution

  • Unfortunately, Informix 9 is a very very old engine. I think you should upgrade (or tell your clients to upgrade) to a newer - and supported - version. A simple upgrade should give them lots of new features, better performance (at least 40% more), and of course, a more stable engine.

    Actually it really does not support version 9. On the product Release Notes page, you will see that:

    "To use IBM Informix JDBC Driver to connect to an IBM Informix database, you must use one of the following IBM Informix database servers:

    Version 11.50, 11.70, or 12.10
    IBM Informix Extended Parallel Server, Version 8.3 or later
    

    "