错误日志如下:
[2022-02-09 16:55:43 779] [WARNING] [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer#0-1] [systemout] [ at java.lang.Thread.run(Thread.java:748)]
[2022-02-09 16:55:43 779] [INFO] [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer#0-1] [systemout] [2022-02-09 16:55:43 ERROR org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer#0-1 LogManager:82 - 数据库查询发送错误]
[2022-02-09 16:55:47 151] [SEVERE] [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer#1-1] [other] [Unable to create initial connections of pool.]
com.kingbase8.util.KSQLException: 致命错误: remaining connection slots are reserved for superuser manager connections (kbjdbc: autodetected server-encoding to be EUC_CN, if the message is not readable, please check database logs and/or host, port, dbname, user, password, sys_hba.conf)
at com.kingbase8.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2415)
at com.kingbase8.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2541)
at com.kingbase8.core.v3.QueryExecutorImpl.<init>(QueryExecutorImpl.java:123)
at com.kingbase8.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:236)
at com.kingbase8.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
at com.kingbase8.jdbc.KbConnection.<init>(KbConnection.java:202)
at com.kingbase8.Driver.makeConnection(Driver.java:476)
at com.kingbase8.Driver.connect(Driver.java:273)
at org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:310)
at org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:203)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:738)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:670)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:482)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131)
at xsf.data.connection.provider.TomcatConnectionProvider.getConnection(SourceFile:129)
at xsf.data.connection.ConnectionManager.get(SourceFile:45)
at xsf.data.DataBaseAdapter.getConnection(DataBaseAdapter.java:88)
at xsf.data.DataBaseAdapter.getDataSet(DataBaseAdapter.java:562)
at xsf.data.DataBaseAdapter.queryDataTable(DataBaseAdapter.java:477)
at xsf.data.DataAdapter.getDataSet(SourceFile:157)
at xsf.data.DataAdapter.getDataTable(SourceFile:242)
at xsf.data.DataAdapter.getDataTable(SourceFile:237)
at xsf.data.DataManager.getDataTable(SourceFile:330)
at cn.dreamit.p1000.config.DBConfig.getItemValueFromDBNotSetRedis(DBConfig.java:105)
at cn.dreamit.p1000.config.DBConfig.getItemValueFromDB(DBConfig.java:116)
at cn.dreamit.p1000.config.DBConfig.getItemSystemValue(DBConfig.java:186)
at cn.dreamit.p1000.config.DBConfig.getString(DBConfig.java:172)
at cn.dreamit.p1000.util.SuperKit.getStringFromDBConfig(SuperKit.java:214)
at cn.dreamit.p1000.util.SuperKit.getStringFromDBConfig(SuperKit.java:177)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1033)
at java.lang.Thread.run(Thread.java:748)
[2022-02-09 16:55:47 152] [WARNING] [org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer#1-1] [other] [Connection has been abandoned PooledConnection[com.kingbase8.jdbc.KbConnection@49c91cf1]:java.lang.Exception
at org.apache.tomcat.jdbc.pool.ConnectionPool.getThreadDump(ConnectionPool.java:1105)
at org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:743)
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:670)
at org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:482)
at org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:154)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131)
at xsf.data.connection.provider.TomcatConnectionProvider.getConnection(SourceFile:129)
at xsf.data.connection.ConnectionManager.get(SourceFile:45)
at xsf.data.DataBaseAdapter.getConnection(DataBaseAdapter.java:88)
at xsf.data.DataBaseAdapter.getDataSet(DataBaseAdapter.java:562)
at xsf.data.DataBaseAdapter.queryDataTable(DataBaseAdapter.java:477)
at xsf.data.DataAdapter.getDataSet(SourceFile:157)
at xsf.data.DataAdapter.getDataTable(SourceFile:242)
at xsf.data.DataAdapter.getDataTable(SourceFile:237)
at xsf.data.DataManager.getDataTable(SourceFile:330)
at cn.dreamit.p1000.config.DBConfig.getItemValueFromDBNotSetRedis(DBConfig.java:105)
at cn.dreamit.p1000.config.DBConfig.getItemValueFromDB(DBConfig.java:116)
at cn.dreamit.p1000.config.DBConfig.getItemSystemValue(DBConfig.java:186)
at cn.dreamit.p1000.config.DBConfig.getString(DBConfig.java:172)
at cn.dreamit.p1000.util.SuperKit.getStringFromDBConfig(SuperKit.java:214)
at cn.dreamit.p1000.util.SuperKit.getStringFromDBConfig(SuperKit.java:177)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1033)
at java.lang.Thread.run(Thread.java:748)
]
程序之前的数据库配置
因为是第一次部署东方通+金仓的没有发现<Add Key="CONNECTION_PROVIDER" Value="xsf.data.connection.provider.TomcatConnectionProvider" />只使用于tomcat
新的数据库连接修改该参数
<Add Key="CONNECTION_PROVIDER" Value="xsf.data.connection.provider.DruidConnectionProvider" />
修改之后程序启动成功