0 0

16 个线程并发操作informix ,infomix jdbc driver 里就会狂出错 请教0

各位:
   我们有一个报表系统,在后台批处理最后插入数据库时,会从informix jdbcDriver里抛出诸多怪异的nullpointException,这些是informixdriver 's bug吗? 或者需要什么数据库级的配置?

环境:AIX  ibm590 , IBM Informix Dynamic Server Version 10.00.FC5 , j2ee 项目.
出错情境: 并发开启16个thread . 操作数据库,按一定条件,对一张表先删,后插入。
           使用apache DBCP 连接池,连接池连接数30个,(按理说16个线程操作数据库,最多使用16个连接,但发现出错时,已表现是新建连接了,这个地方也不知是不是连接池的原因.) 

具体错误:
java.lang.NullPointerException
         at com.informix.jdbc.IfxDriver.a(IfxDriver.java:911)
         at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:233)
         at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
         at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
         at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
         at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
         at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
         at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:186)

java.lang.NullPointerException
         at java.util.Hashtable.put(Hashtable.java:632)
         at com.informix.jdbc.IfxDriver.a(IfxDriver.java:962)
         at com.informix.jdbc.IfxDriver.connect(IfxDriver.java:233)
         at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:37)
         at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:290)
         at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:771)
         at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:95)
         at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540)
         at org.springframework.jdbc.datasource.DataSourceTransactionManager.doBegin(DataSourceTransactionManager.java:186)

连这个select 竞也会出错。不是所有select都错,是只有少数几个,select语句都是一样,只是执行时间不同
java.sql.SQLException: Database not selected yet.
org.springframework.jdbc.UncategorizedSQLException: StatementCallback; uncategorized SQLException for SQL [select kmh,jfye,dfye,ycjfye,ycdfye,jffse,dffse,yjffsexj,ydffsexj,yjffsezz,ydffsezz,ndffsexj,njffsexj,njffsezz,ndffsezz,ndffse,ncjfye,ncdfye,njffse from base_item_month where Dbank_id='2211042800' and Dcurr_id='01' and Ddate='2008-01-31' and (1=1) order by ROW_NO]; SQL state [IX000]; error code [-349]; Database not selected yet.; nested exception is java.sql.SQLException: Database not selected yet.


如有informix相关经验的高人,请望多多指点,thx.
2008年5月24日 16:31

1个答案 按时间排序 按投票排序

0 0

遇到相同的问题,30个线程并发,weblogic jni线程池初始30个线程。

2013年7月19日 13:51

相关推荐

    informix JDBC driver 驱动

    informix JDBC driver 文件列表 1.com.springsource.com.informix.jdbc-3.0.0.JC3 2.informix-driver-3.70.jar 3.jdbc-4.10.14.jar 4.jdbc-4.50.3.jar

    Informix_JDBC_Driver.rar

    《Informix JDBC 驱动详解》 在Java应用程序中,与各种数据库进行交互是常见的需求,Informix JDBC驱动程序正是实现这一目标的关键组件。本文将深入探讨Informix JDBC驱动的相关知识点,帮助开发者更好地理解和使用...

    informix-jdbc各版本驱动包合集.zip

    《Informix JDBC驱动详解及其版本对比》 Informix是一款高效且功能强大的关系型数据库管理系统,广泛应用于企业级数据存储和管理。与Java编程语言的交互是通过Java Database Connectivity(JDBC)驱动程序实现的。...

    informix jdbc驱动

    Informix JDBC驱动是连接Java应用程序与Informix关系型数据库的关键组件。JDBC(Java Database Connectivity)是Java平台的标准接口,允许Java程序通过网络与各种数据库进行通信。Informix JDBC驱动程序实现了这一...

    informix jdbc driver 3.5

    informix 3.5 最新jdbc驱动

    informix_jdbc驱动jar包

    此外,Informix还提供了一个名为“Informix JDBC Driver Type 4”的高性能驱动,它支持JDBC 4.1和4.2规范,具有更好的性能和兼容性。 总之,“informix_jdbc驱动jar包”是Java开发者连接和操作Informix数据库所必需...

    informix的jdbc驱动

    informix的jdbc驱动informix的jdbc驱动informix的jdbc驱动

    informix jdbc jar包

    标题 "informix jdbc jar包" 指的是用于Java应用程序连接Informix数据库的JDBC驱动程序集合。在Java开发中,JDBC(Java Database Connectivity)是标准接口,允许Java程序与各种类型的数据库进行交互。Informix JDBC...

    informix JDBC驱动jar

    Informix JDBC驱动jar是连接Java应用程序到Informix数据库的关键组件。Informix是一个高效能的关系型数据库管理系统(RDBMS),广泛应用于企业级的数据存储和管理。JDBC(Java Database Connectivity)是Java平台上...

    Informix jdbc驱动

    Informix jdbc驱动

    informix的jdbc驱动.zip

    标题 "informix的jdbc驱动.zip" 提供的信息表明,这个压缩包包含的是Informix数据库的Java Database Connectivity (JDBC) 驱动程序。JDBC是Java编程语言中用于与各种数据库进行交互的一种标准接口,它允许Java应用...

    informix-jdbc驱动

    informix JDBC驱动 , 用在java与informix数据库之间的数据交互,给需要基于informix数据库做开发的人使用

    informix jdbc 驱动包

    Informix JDBC驱动包是连接Java应用程序与Informix数据库的关键组件,它遵循Java Database Connectivity (JDBC) API标准,使得Java开发者能够通过编写Java代码来访问和操作Informix数据库。本篇将详细介绍Informix ...

    informix JDBC Driver

    Informix JDBC 驱动是Java程序员连接Informix数据库的桥梁,它实现了Java的java.sql.Driver接口,使得Java应用程序可以通过标准的JDBC API与Informix数据库进行通信。这个驱动程序使得开发者无需关心底层的网络协议...

    Informix Jdbc Driver

    标题 "Informix JDBC Driver" 指的是IBM Informix数据库的Java数据库连接(JDBC)驱动程序,这是Java应用程序与Informix数据库进行交互的关键组件。 Informix JDBC驱动提供了标准的Java API,使得开发者能够利用Java...

    Informix数据库驱动(亲测)

    1. `informix_Driver.jar`:这是一个Java Archive (JAR) 文件,包含了Informix数据库的JDBC驱动程序类。在Java应用中,通过`Class.forName()`方法加载这个JAR文件中的类,然后就可以创建JDBC连接,执行SQL语句,读取...

    包含多个不同版本的informix-jdbc驱动

    包含多个不同版本的informix-jdbc驱动。 说明:ifxjdbc-[版本]-[JDK版本]-[驱动年月] 1.怎么确定jdbc版本的: 通过反编译IfxDriver.class中 getJDBCVersion() 获得。 2.MANIFEST.MF确定JDK环境

    IBM Informix JDBC 驱动(jdk1.4+)

    To use IBM Informix JDBC Driver Version 3.00, you must use a JDK 1.3.x or later package on your platform. To use features added by the JDBC 3.0 specification, you must use JDK 1.4.x or later.

    informix的jdbc jar包

    informix的jdbc jar包用于在jdbc里配置informix数据库

    informix JDBC驱动及示例代码

    Informix JDBC驱动是Oracle公司为Informix数据库提供的一套实现了JDBC API的Java类库,使得开发者能够用Java语言编写数据库应用程序,无缝地操作Informix数据库。 【驱动类型】 Informix JDBC驱动分为两种类型:...

Global site tag (gtag.js) - Google Analytics