I am using WSO2 API Manger 1.8.0. I have enabled SAML2BearerAssertion Profile based OAuth Authorization Check for one of my REST APIs.
When I send parallel API requests from JMeter. I see these logs in the console.But response received correctly.
[2015-03-05 05:08:32,497] WARN - APIKeyValidationServiceImpl Invalid session id for thrift authenticator.
[2015-03-05 05:08:32,495] WARN - APIKeyValidationServiceImpl Invalid session id for thrift authenticator.
[2015-03-05 05:08:33,342] WARN - ThriftKeyValidatorClientPool Login failed.. Authenticating again..
[2015-03-05 05:08:33,342] WARN - ThriftKeyValidatorClientPool Login failed.. Authenticating again..
[2015-03-05 05:08:32,493] INFO - CarbonAuthenticationUtil 'admin#carbon.super [-1234]' logged in at [2015-03-05 05:08:32,492+0000] from IP address
When I increase the parallel load further. In my case 125+ clients. It gives these exceptions. Also no response received.
2015-03-05 05:10:05,795] WARN - SourceHandler Connection time out after request is read: http-incoming-634
[2015-03-05 05:10:06,752] WARN - SourceHandler Connection time out after request is read: http-incoming-625
[2015-03-05 05:10:06,753] WARN - SourceHandler Connection time out after request is read: http-incoming-690
[2015-03-05 05:10:06,796] WARN - SourceHandler Connection time out after request is read: http-incoming-684
[2015-03-05 05:10:06,797] WARN - SourceHandler Connection time out after request is read: http-incoming-648
[2015-03-05 05:10:06,797] WARN - SourceHandler Connection time out after request is read: http-incoming-500
[2015-03-05 05:10:06,797] WARN - SourceHandler Connection time out after request is read: http-incoming-645
[2015-03-05 05:10:08,025] ERROR - ApiMgtDAO Error when executing the SQL
org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-41-thread-640] Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none available[size:50; busy:50; idle:0; lastwait:60000].
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:674)
at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
at org.wso2.carbon.apimgt.impl.utils.APIMgtDBUtil.getConnection(APIMgtDBUtil.java:138)
at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.validateKey(ApiMgtDAO.java:710)
at org.wso2.carbon.apimgt.keymgt.service.APIKeyValidationService.validateKey(APIKeyValidationService.java:148)
at org.wso2.carbon.apimgt.keymgt.service.thrift.APIKeyValidationServiceImpl.validateKey(APIKeyValidationServiceImpl.java:131)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:274)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:262)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[2015-03-05 05:10:08,026] ERROR - ApiMgtDAO Error when executing the SQL
org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-41-thread-613] Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none available[size:50; busy:50; idle:0; lastwait:60000].
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:674)
at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
at org.wso2.carbon.apimgt.impl.utils.APIMgtDBUtil.getConnection(APIMgtDBUtil.java:138)
at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.validateKey(ApiMgtDAO.java:710)
at org.wso2.carbon.apimgt.keymgt.service.APIKeyValidationService.validateKey(APIKeyValidationService.java:148)
at org.wso2.carbon.apimgt.keymgt.service.thrift.APIKeyValidationServiceImpl.validateKey(APIKeyValidationServiceImpl.java:131)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:274)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:262)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[2015-03-05 05:10:08,027] ERROR - APIKeyValidationServiceImpl Error in invoking validate key via thrift..
[2015-03-05 05:10:08,027] ERROR - APIKeyValidationServiceImpl Error in invoking validate key via thrift..
[2015-03-05 05:10:08,043] ERROR - ApiMgtDAO Error when executing the SQL
org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-41-thread-628] Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none available[size:50; busy:50; idle:0; lastwait:60000].
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:674)
at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
at org.wso2.carbon.apimgt.impl.utils.APIMgtDBUtil.getConnection(APIMgtDBUtil.java:138)
at org.wso2.carbon.apimgt.impl.dao.ApiMgtDAO.validateKey(ApiMgtDAO.java:710)
at org.wso2.carbon.apimgt.keymgt.service.APIKeyValidationService.validateKey(APIKeyValidationService.java:148)
at org.wso2.carbon.apimgt.keymgt.service.thrift.APIKeyValidationServiceImpl.validateKey(APIKeyValidationServiceImpl.java:131)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:274)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:262)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[2015-03-05 05:10:08,043] ERROR - JDBCPersistenceManager Error when getting a database connection object from the Identity data source.
org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-41-thread-656] Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none available[size:50; busy:50; idle:0; lastwait:60000].
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:674)
at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
at org.wso2.carbon.identity.core.persistence.JDBCPersistenceManager.getDBConnection(JDBCPersistenceManager.java:136)
at org.wso2.carbon.identity.thrift.authentication.dao.ThriftSessionDAO.updateLastAccessTime(ThriftSessionDAO.java:188)
at org.wso2.carbon.identity.thrift.authentication.ThriftAuthenticatorServiceImpl.isAuthenticated(ThriftAuthenticatorServiceImpl.java:186)
at org.wso2.carbon.apimgt.keymgt.service.thrift.APIKeyValidationServiceImpl.validateKey(APIKeyValidationServiceImpl.java:103)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:274)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:262)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[2015-03-05 05:10:08,043] ERROR - APIKeyValidationServiceImpl Error in invoking validate key via thrift..
[2015-03-05 05:10:08,044] ERROR - ThriftSessionDAO Error when getting an Identity Persistence Store instance.
org.wso2.carbon.identity.base.IdentityException: Error when getting a database connection object from the Identity data source.
at org.wso2.carbon.identity.core.persistence.JDBCPersistenceManager.getDBConnection(JDBCPersistenceManager.java:143)
at org.wso2.carbon.identity.thrift.authentication.dao.ThriftSessionDAO.updateLastAccessTime(ThriftSessionDAO.java:188)
at org.wso2.carbon.identity.thrift.authentication.ThriftAuthenticatorServiceImpl.isAuthenticated(ThriftAuthenticatorServiceImpl.java:186)
at org.wso2.carbon.apimgt.keymgt.service.thrift.APIKeyValidationServiceImpl.validateKey(APIKeyValidationServiceImpl.java:103)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:274)
at org.wso2.carbon.apimgt.impl.generated.thrift.APIKeyValidationService$Processor$validateKey.getResult(APIKeyValidationService.java:262)
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:176)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.tomcat.jdbc.pool.PoolExhaustedException: [pool-41-thread-656] Timeout: Pool empty. Unable to fetch a connection in 60 seconds, none available[size:50; busy:50; idle:0; lastwait:60000].
at org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:674)
at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:188)
at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:128)
at org.wso2.carbon.identity.core.persistence.JDBCPersistenceManager.getDBConnection(JDBCPersistenceManager.java:136)
... 11 more
Is this the limit for a single APIM node? Or can I do some more tuning?
you can see the message " Unable to fetch a connection in 60 seconds" this because thread wait for 60 second to get the database connection and fails to get the connection.
In master-datasource.xml file you can find following elements for each data source.
<maxActive>50</maxActive>
<maxWait>60000</maxWait>
where
MaxActive: The maximum number of database connections in use at one time.
If a connection is requested while MaxActive other connections are in use, APIM will wait for MaxWait milliseconds for a connection to be returned, and will then throw an exception if no connection was made available.
so you can increase the maxActive or maxWait . when running more in parallel.
As of WSO2 APIM 3.0.0 This would required changes in your deployment.toml file as-
[database.apim_db]
type = "h2"
url = "jdbc:h2:./repository/database/WSO2AM_DB;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE"
username = "wso2carbon"
password = "wso2carbon"
pool_options.maxActive=300
pool_options.maxActive has default value of 50 which can be overridden by this file. Similar changes could be done for shared_db etc.
Related
I'm trying to publish MQTT messages to the iot.eclipse.org:1883. I installed the heater bundle to Kura 3.0.0. in my raspberry pi B (with raspbian) and set the 'broker-url' in the MqttDataTransport to the Eclipse sandbox broker and the 'connect.auto-on-startup' to true.
I saw that my status did not change after that. Then, I displayed the Kura.log and I realized that DataPublisherService did not connect.CloudServices disconnected
o.e.k.d.h.Heater - Getting CloudClient for heater...
2017-07-21 12:15:20,836 [Component Resolve Thread (Bundle 7)] INFO o.e.k.d.h.Heater - Activating Heater... Done.
2017-07-21 12:15:21,034 [Component Resolve Thread (Bundle 7)] INFO o.e.k.c.c.ConfigurationServiceImpl - Registering ConfigurableComponent - org.eclipse.kura.demo.heater.Heater....
2017-07-21 12:15:21,040 [Component Resolve Thread (Bundle 7)] INFO o.e.k.c.c.ConfigurationServiceImpl - Registering ConfigurableComponent - org.eclipse.kura.demo.heater.Heater....Done
2017-07-21 12:15:22,974 [] INFO o.e.k.d.h.Heater - Published to data message: org.eclipse.kura.message.KuraPayload#248966
2017-07-21 12:15:22,986 [DataServiceImpl:Submit] INFO o.e.k.c.d.DataServiceImpl - DataPublisherService not connected
Caused by: java.net.SocketTimeoutException: connect timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:70)
at org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:650)
... 1 more
MqttDataTransport - xxxxx Connect failed. Forcing disconnect. xxxxx {}
o.e.k.c.d.t.m.MqttDataTransport - Closing client...
o.e.k.c.d.t.m.MqttDataTransport - Closed
`
What must I do? Thanks in advance.
How can i detect this exception when i start my application:
org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection timed out: connect
The project is configured in the Spring way (http://projects.spring.io/spring-amqp/) and I can see the errors in the logs, but I can't detect it in my java Classes.
Consumer raised exception, processing can restart if the connection factory supports it. Exception summary: org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection timed out: connect
Restarting Consumer: tags=[{}], channel=null, acknowledgeMode=AUTO local queue size=0
Failed to check/redeclare auto-delete queue(s).org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection timed out: connect
at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:54)
at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:217)
at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createConnection(CachingConnectionFactory.java:444)
at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils$1.createConnection(ConnectionFactoryUtils.java:80)
at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.doGetTransactionalResourceHolder(ConnectionFactoryUtils.java:130)
at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.getTransactionalResourceHolder(ConnectionFactoryUtils.java:67)
at org.springframework.amqp.rabbit.core.RabbitTemplate.doExecute(RabbitTemplate.java:1035)
at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1028)
at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:1004)
at org.springframework.amqp.rabbit.core.RabbitAdmin.getQueueProperties(RabbitAdmin.java:254)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.redeclareElementsIfNecessary(SimpleMessageListenerContainer.java:947)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.access$300(SimpleMessageListenerContainer.java:82)
at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1065)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at com.rabbitmq.client.impl.FrameHandlerFactory.create(FrameHandlerFactory.java:32)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:615)
at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:651)
at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:208)
... 12 more
This can happen for example when you have no access to the AMQP port.
Thank you!
There is currently no event emitted when this error occurs (I have created a JIRA issue to add one.
In the meantime, since the the connection is shared, you could call createConnection() on the connection factory from your own code from time to time, to check the connection state.
Or, you could hook into the logging subsystem to capture the WARN log, as I described in this answer.
I am trying to integrate Teradata with HikariCP in a Grails application and facing issues. I am able to connect to Teradata with the same configuration using the default Grails connection pool or datasource.
I tried tweaking the connection timeout also.
libraries used:
Teradata:
runtime (group: 'com.teradata', name:'terajdbc4', version:'13.10.0.8')
runtime (group: 'com.teradata', name:'tdgssconfig', version:'13.10.0.8')
HikariCp:
compile (group: 'com.zaxxer', name: 'HikariCP-java6', version: '2.2.4')
Connection Properties Used:
[logSql:false, loggingSql:true, dialect:org.hibernate.dialect.TeradataDialect,
driverClassName:com.teradata.jdbc.TeraDriver, username:userId, password:pwd,
url:jdbc:teradata://DBName, pooled:true,
properties:[initialSize:5, minIdle:1, maxIdle:5, maxActive:3, maxWait:2000,
maxAge:60000, minEvictableIdleTimeMillis:30000, timeBetweenEvictionRunsMillis:30000,
abandonWhenPercentageFull:50, numTestsPerEvictionRun:3, testOnBorrow:true,
testWhileIdle:true, testOnReturn:true, validationQuery:SELECT 1,
validationInterval:500], jndiName:[:], readOnly:[:], passwordEncryptionCodec:[:]]
Error Log:
TERAJDBC4 ERROR [HikariCP connection filler (pool HikariPool-0)] com.teradata.jdbc.jdbc_4.TDSession#5f045975 Connection to DBName
Tue May 05 17:20:50 CDT 2015 socket orig=DBName cid=247608ab sess=0 com.teradata.jdbc.jdbc_4.util.JDBCException:
[Teradata JDBC Driver] [TeraJDBC 13.10.00.08] [Error 1276] [SQLState 08S01] Exceeded login timeout for DBName
at com.teradata.jdbc.jdbc_4.util.ErrorFactory.makeDriverJDBCException(ErrorFactory.java:92)
at com.teradata.jdbc.jdbc_4.util.ErrorFactory.makeDriverJDBCException(ErrorFactory.java:67)
at com.teradata.jdbc.jdbc.ConnectionBase.checkRemainingLoginTime(ConnectionBase.java:81)
at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF$Lookup.<init>(TDNetworkIOIF.java:168)
at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF.connectToHost(TDNetworkIOIF.java:289)
at com.teradata.jdbc.jdbc_4.io.TDNetworkIOIF.<init>(TDNetworkIOIF.java:108)
at com.teradata.jdbc.jdbc_4.TDSession.getIO(TDSession.java:584)
at com.teradata.jdbc.jdbc.GenericStateController.<init>(GenericStateController.java:41)
at com.teradata.jdbc.jdbc.GenericLogonController.<init>(GenericLogonController.java:40)
at com.teradata.jdbc.jdbc_4.TDSession.<init>(TDSession.java:202)
at com.teradata.jdbc.jdbc_3.ifjdbc_4.TeraLocalConnection.<init>(TeraLocalConnection.java:99)
at com.teradata.jdbc.jdbc.ConnectionFactory.createConnection(ConnectionFactory.java:58)
at com.teradata.jdbc.TeraDriver.doConnect(TeraDriver.java:218)
at com.teradata.jdbc.TeraDriver.connect(TeraDriver.java:151)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:187)
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:56)
at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:62)
at com.zaxxer.hikari.pool.HikariPool.addConnection(HikariPool.java:415)
at com.zaxxer.hikari.pool.HikariPool.access$400(HikariPool.java:73)
at com.zaxxer.hikari.pool.HikariPool$1AddConnection.run(HikariPool.java:316)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Error | 2015-05-05 17:20:51,234 [HikariCP connection filler (pool HikariPool-0)] ERROR pool.HikariPool - JDBC4 Connection.isValid() method not supported, connection test query must be configured
Error | 2015-05-05 17:20:51,821 [HikariCP connection filler (pool HikariPool-0)] ERROR pool.HikariPool - JDBC4 Connection.isValid() method not supported, connection test query must be configured
I'm not sure if those are the connection properties that work, or those that don't work, but they surely are not HikariCP properties. I suggest enabling DEBUG level logging, and then examining the properties that HikariCP logs at startup to ensure that they match your expections.
I just started using Jenkins and I'm seeing an issue where my slave services is crashing while running a job(the job executes an .exe program). The error I'm seeing is as follows -
FATAL: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
hudson.remoting.RequestAbortedException: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
at hudson.remoting.RequestAbortedException.wrapForRethrow(RequestAbortedException.java:41)
at hudson.remoting.RequestAbortedException.wrapForRethrow(RequestAbortedException.java:34)
at hudson.remoting.Request.call(Request.java:174)
at hudson.remoting.Channel.call(Channel.java:714)
at hudson.remoting.RemoteInvocationHandler.invoke(RemoteInvocationHandler.java:167)
at $Proxy46.join(Unknown Source)
at hudson.Launcher$RemoteLauncher$ProcImpl.join(Launcher.java:925)
at hudson.Launcher$ProcStarter.join(Launcher.java:360)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:94)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:63)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:781)
at hudson.model.Build$BuildExecution.build(Build.java:199)
at hudson.model.Build$BuildExecution.doRun(Build.java:160)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:562)
at hudson.model.Run.execute(Run.java:1665)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:230)
Caused by: hudson.remoting.RequestAbortedException: java.net.SocketException: Connection reset
at hudson.remoting.Request.abort(Request.java:299)
at hudson.remoting.Channel.terminate(Channel.java:774)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:69)
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:77)
at java.io.ObjectInputStream$PeekInputStream.peek(ObjectInputStream.java:2248)
at java.io.ObjectInputStream$BlockDataInputStream.peek(ObjectInputStream.java:2541)
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2551)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1296)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at hudson.remoting.Command.readFrom(Command.java:92)
at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:71)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)
Any help or insight on why this is happening would be great!
Eric
I am using Jenkins. Go the particular node,
Click on Configuration then in JVM options enter -Xms512m -Xmx1024m
That will increase the heap size.
Here is my xml:
<mail:inbound-channel-adapter id="imapAdapter"
store-uri="imaps://[avita.nir#gmail.com]:[secretPass]#imap.gmail.com/INBOX"
channel="recieveEmailChannel"
should-delete-messages="false"
should-mark-messages-as-read="true"
auto-startup="true"
java-mail-properties="javaMailProperties">
For some reason when i type this "store-uri" i get this exception (null password):
DEBUG: protocolConnect returning false, host=gmail.com], user=[avita.nir, password=<null>
21 יול 2013 15:32:05 ERROR LoggingHandler - org.springframework.integration.MessagingException: failure occurred while polling for mail
at org.springframework.integration.mail.MailReceivingMessageSource.receive(MailReceivingMessageSource.java:73)
at org.springframework.integration.endpoint.SourcePollingChannelAdapter.doPoll(SourcePollingChannelAdapter.java:89)
at org.springframework.integration.endpoint.AbstractPollingEndpoint$1.call(AbstractPollingEndpoint.java:145)
at org.springframework.integration.endpoint.AbstractPollingEndpoint$1.call(AbstractPollingEndpoint.java:143)
at org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller$1.run(AbstractPollingEndpoint.java:206)
at org.springframework.integration.util.ErrorHandlingTaskExecutor$1.run(ErrorHandlingTaskExecutor.java:52)
at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:48)
at org.springframework.integration.util.ErrorHandlingTaskExecutor.execute(ErrorHandlingTaskExecutor.java:49)
at org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller.run(AbstractPollingEndpoint.java:201)
at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:53)
at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolE xecutor.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.springframework.integration.MessagingException: failure occurred while receiving from folder
at org.springframework.integration.mail.AbstractMailReceiver.receive(AbstractMailReceiver.java:240)
at org.springframework.integration.mail.MailReceivingMessageSource.receive(MailReceivingMessageSource.java:59)
... 18 more
Caused by: javax.mail.AuthenticationFailedException: failed to connect, no password specified?
Remove the [ ] and you should be good - also if the username or password contains special characters you will have to escape them.
It's always useful to set mail.debug to true for these issues and you'll get more information on the console.