隨筆-10  評論-23  文章-32  trackbacks-0

          這是我換了數(shù)據(jù)庫以后報的錯誤:

          INFO 23:09:16,296 ConnectionProviderFactory:72 - Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider
          WARN 23:09:36,375 ThreadPoolAsynchronousRunner:608 - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@13cb6cf -- APPARENT DEADLOCK!!! Creating emergency threads for unassigned pending tasks!
          WARN 23:09:36,390 ThreadPoolAsynchronousRunner:624 - com.mchange.v2.async.ThreadPoolAsynchronousRunner$DeadlockDetector@13cb6cf -- APPARENT DEADLOCK!!! Complete Status:
          Managed Threads: 3
          Active Threads: 3
          Active Tasks:
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1b65d47 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1)
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@1a61582 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2)
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@ce4625 (com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0)
          Pending Tasks:
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@5f5deb
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@10ef5a5
          Pool thread stack traces:
          Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1,5,main]
          java.net.PlainSocketImpl.socketConnect(Native Method)
          java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
          java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
          java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
          java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
          java.net.Socket.connect(Socket.java:519)
          java.net.Socket.connect(Socket.java:469)
          java.net.Socket.<init>(Socket.java:366)
          java.net.Socket.<init>(Socket.java:180)
          oracle.net.nt.TcpNTAdapter.connect(Unknown Source)
          oracle.net.nt.ConnOption.connect(Unknown Source)
          oracle.net.nt.ConnStrategy.execute(Unknown Source)
          oracle.net.resolver.AddrResolution.resolveAndExecute(Unknown Source)
          oracle.net.ns.NSProtocol.establishConnection(Unknown Source)
          oracle.net.ns.NSProtocol.connect(Unknown Source)
          oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:844)
          oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:268)
          oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
          oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
          oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
          oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
          com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
          com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
          com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
          com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
          com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
          Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#2,5,main]
          java.net.PlainSocketImpl.socketConnect(Native Method)
          java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
          java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
          java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
          java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
          java.net.Socket.connect(Socket.java:519)
          java.net.Socket.connect(Socket.java:469)
          java.net.Socket.<init>(Socket.java:366)
          java.net.Socket.<init>(Socket.java:180)
          oracle.net.nt.TcpNTAdapter.connect(Unknown Source)
          oracle.net.nt.ConnOption.connect(Unknown Source)
          oracle.net.nt.ConnStrategy.execute(Unknown Source)
          oracle.net.resolver.AddrResolution.resolveAndExecute(Unknown Source)
          oracle.net.ns.NSProtocol.establishConnection(Unknown Source)
          oracle.net.ns.NSProtocol.connect(Unknown Source)
          oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:844)
          oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:268)
          oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
          oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
          oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
          oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
          com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
          com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
          com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
          com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
          com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
          Thread[com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#0,5,main]
          java.net.PlainSocketImpl.socketConnect(Native Method)
          java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
          java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
          java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
          java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
          java.net.Socket.connect(Socket.java:519)
          java.net.Socket.connect(Socket.java:469)
          java.net.Socket.<init>(Socket.java:366)
          java.net.Socket.<init>(Socket.java:180)
          oracle.net.nt.TcpNTAdapter.connect(Unknown Source)
          oracle.net.nt.ConnOption.connect(Unknown Source)
          oracle.net.nt.ConnStrategy.execute(Unknown Source)
          oracle.net.resolver.AddrResolution.resolveAndExecute(Unknown Source)
          oracle.net.ns.NSProtocol.establishConnection(Unknown Source)
          oracle.net.ns.NSProtocol.connect(Unknown Source)
          oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:844)
          oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:268)
          oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:414)
          oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
          oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
          oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
          com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
          com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
          com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
          com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
          com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
          com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
          com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
          原因:網(wǎng)上多是說c3p0 bug引起的
          我的數(shù)據(jù)庫oracle 10.2.0.1,oracle14.jar也是10.2.0.1版本,我做了兩個修改這個錯誤就沒有了,具體原因還不明,先解決了再說。
          一.修改數(shù)據(jù)庫方言為oracle.jdbc.driver.OracleDriver(原來為oracle.jdbc.OracleDriver 在linux上也可以使用的)
          二.修改數(shù)據(jù)庫的最大連接數(shù),見:http://www.aygfsteel.com/zhip/archive/2008/05/16/200769.html
          posted on 2009-09-28 23:19 liuyimx 閱讀(27128) 評論(6)  編輯  收藏

          評論:
          # re: c3po異常:Creating emergency threads for unassigned pending tasks! 2009-11-04 11:28 | zwh
          首先嘗試解決數(shù)據(jù)庫的鏈接問題,既然出錯信息報告unknown source,說明數(shù)據(jù)庫沒有鏈接上,可檢查1鏈接串是否正確,2數(shù)據(jù)庫服務(wù)是否已經(jīng)啟動,  回復(fù)  更多評論
            
          # re: c3po異常:Creating emergency threads for unassigned pending tasks! 2009-11-04 11:42 | zwh
          @zwh
          還有3,檢查數(shù)據(jù)庫用戶名和密碼是否正確。如果用代碼測試數(shù)據(jù)庫可以鏈接上,那么這個問題應(yīng)該不會再出現(xiàn)。  回復(fù)  更多評論
            
          # re: c3po異常:Creating emergency threads for unassigned pending tasks![未登錄] 2012-10-29 16:16 | zp
          我們的服務(wù)器天天都報這個警告,跟你的信息基本一致。很奇怪,這究竟是什么原因引起的?能否解釋一下啊?數(shù)據(jù)庫的連接以及用戶密碼都沒問題。目前數(shù)據(jù)庫支持的最大連接數(shù)是2000,c3po設(shè)置100。
          leo_soul@126.com
          如有什么消息,麻煩發(fā)個郵件通知一下。謝謝  回復(fù)  更多評論
            
          # re: c3po異常:Creating emergency threads for unassigned pending tasks![未登錄] 2012-11-14 10:36 | zp
          我找到原因了,原來是做過系統(tǒng)集群,有多臺集群服務(wù)器,在同一時間觸發(fā)一個insert操作,導(dǎo)致沖突。  回復(fù)  更多評論
            
          # re: c3po異常:Creating emergency threads for unassigned pending tasks! 2013-05-03 17:37 | 嘎嘎嘎嘎
          @zwh
          嘎嘎嘎嘎  回復(fù)  更多評論
            
          # re: c3po異常:Creating emergency threads for unassigned pending tasks! 2013-05-20 15:02 | rebel
          @zp
          解決方法呢?  回復(fù)  更多評論
            

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 尉犁县| 洞口县| 九寨沟县| 宕昌县| 上林县| 吐鲁番市| 东宁县| 余江县| 尚义县| 道真| 绥阳县| 津市市| 通河县| 吉木萨尔县| 镇宁| 嵊州市| 台湾省| 邹城市| 奉新县| 青冈县| 阿拉善右旗| 横山县| 丹江口市| 阳城县| 沂南县| 禄丰县| 务川| 额济纳旗| 郑州市| 都匀市| 洛南县| 伽师县| 荔波县| 忻城县| 武隆县| 连江县| 麻阳| 石渠县| 自贡市| 江山市| 台湾省|