Bug 59923

Summary: The default value of validationInterval attribute is too long.
Product: Tomcat Modules Reporter: Tatsuya Bessho <t.bessho0331>
Component: jdbc-poolAssignee: Tomcat Developers Mailing List <dev>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Tatsuya Bessho 2016-08-02 07:26:01 UTC
The validationInterval attribute is 30 seconds by default.
In case of DB reboots, trigger some problems.
For example, the following events will be considered.

1. The connection is validated.
2. DB reboots.
3. getConnection() within 30 seconds.
4. The connection isn't validated by testOnBorrow.
5. Get the invalid connection.

And worse, the default value of fairQueue is true.
As a result, invalid connection is continued to use.

Therefore, I think the default value should be more short or "0(disable)".
Comment 1 Keiichi Fujino 2016-08-02 07:35:14 UTC
That's for sure.

I plan to reduce the default value of validationInterval.
Probably about 3000 millseconds(that is 10% value existing).
I am going to commit this tomorrow if there is no objections.
Comment 2 Keiichi Fujino 2016-08-03 08:52:56 UTC
The fix will be in :
- 9.0.x for 9.0.0.M10 onwards
- 8.5.x for 8.5.5 onwards
- 8.0.x for 8.0.37 onwards
- 7.0.x for 7.0.71 onwards