Hi ALL,

 

Below exception is troubling me a lot and could not figure out the cause for it, could you please share any clues on how to proceed with this?

 

I have a java web service using  C3P0 and SpringJDBC, I’m seeing DB Connection related errors for this Service.

 

I’m suspecting for some reason the DB Connections are getting closed / not usable, and below exception is being raised.

 

I’m not able to find any errors responsible for closing the connection and only error in application logs is pasted below.

 

Could you please share any clues, if you are aware of?

And will it be possible to know the reason for which the connection has been closed / invalid?

 

As a temp fix I’ve put a cron in place to bounce the service for every 12 hours.

 

Only one common error, pasted below:

 

26 Sep 2013 07:02:57,303 [DEBUG] 8fc94d44-3b11-46c6-bc55-d3c217406a08 (Coral Endpoint : 2) com.amazon.coral.service.ActivityHandler: Looking up invoker for service: 'FCLogService' and operation: 'setLogsForHost'

26 Sep 2013 07:02:57,304 [INFO] 8fc94d44-3b11-46c6-bc55-d3c217406a08 (Coral Endpoint : 2) com.amazon.FCLogService.activity.setLogsForHostActivity: Processing appList for: fcpicking-integ-service-31002.sea31.amazon.com

26 Sep 2013 07:02:57,304 [INFO] 8fc94d44-3b11-46c6-bc55-d3c217406a08 (Coral Endpoint : 2) com.amazon.FCLogService.activity.setLogsForHostActivity: App: FCPickingRollbackService, FC: IND1

26 Sep 2013 07:02:57,304 [WARN] 8fc94d44-3b11-46c6-bc55-d3c217406a08 (Coral Endpoint : 2) com.mchange.v2.c3p0.impl.NewPooledConnection: [c3p0] A Pooled Connection that has already signalled a Connection error is still in use!

26 Sep 2013 07:02:57,304 [WARN] 8fc94d44-3b11-46c6-bc55-d3c217406a08 (Coral Endpoint : 2) com.mchange.v2.c3p0.impl.NewPooledConnection: [c3p0] Another error has occurred [ java.sql.SQLRecoverableException: Closed Connection ] which will not be reported to listeners!

java.sql.SQLRecoverableException: Closed Connection

        at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3560)

        at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3461)

        at com.mchange.v2.c3p0.impl.NewProxyConnection.prepareStatement(NewProxyConnection.java:213)

        at org.springframework.jdbc.core.JdbcTemplate$SimplePreparedStatementCreator.createPreparedStatement(JdbcTemplate.java:1313)

        at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:585)

       at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:641)

        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:670)

        at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:678)

        at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:721)

        at org.springframework.jdbc.core.JdbcTemplate.queryForObject(JdbcTemplate.java:732)

        at org.springframework.jdbc.core.JdbcTemplate.queryForInt(JdbcTemplate.java:759)

        at org.springframework.jdbc.core.simple.SimpleJdbcTemplate.queryForInt(SimpleJdbcTemplate.java:119)

 

 

Thanks,

Ram.