manifoldcf-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rüdiger Kurz <k...@vnc-online.de>
Subject Re: Health Check of database connections
Date Fri, 22 May 2015 17:46:38 GMT
Hi Karl,

I've prototyped the integration of the HikariCP JDBC connection pool 
[1]. For details you can have a look at the attached file 
ConnectionFactory.java.

There are two additional dependencies needed in order to get this run:

 >    <dependency>
 >        <groupId>com.zaxxer</groupId>
 >        <artifactId>HikariCP-java6</artifactId>
 >        <version>2.3.8</version>
 >        <scope>compile</scope>
 >    </dependency>
 >    <dependency>
 >        <groupId>org.javassist</groupId>
 >        <artifactId>javassist</artifactId>
 >        <version>3.18.1-GA</version>
 >        <scope>runtime</scope>
 >    </dependency>

To get this well done, I would like to change the initialization of the 
data source into the following style:

 >    HikariConfig config = new HikariConfig("some/path/hikari.properties");
 >    HikariDataSource ds = new HikariDataSource(config);

At least I would like to make sure this core changes do work stable. Do 
you see any gaps or issues with this approach? Which test essential 
cases do I need to run?

BTW: I think the test case RSSFlakyHSQLDBIT switches between an 
"exception"-mode and a "non-exception"-mode, but does not turn off the 
database and restarting it. So all the connections within the pool will 
be alive anyways. Very likely I've missed something important, so please 
correct me, if my assumption is wrong. I'm new to ManifoldCF ;-)

-Rüdiger

[1] https://github.com/brettwooldridge/HikariCP


On Thu, May 21, 2015 at 1:47 PM, Karl Wright <daddywri@gmail.com> wrote:

 > I should also mention that I've done *precisely* the test you
 > describe against PostgreSQL -- shutting the database down in the
 > middle of a crawl, and restarting it.  Everything works fine in that
 > case -- the PostgreSQL JDBC driver seems quite able to reestablish
 > connections that have gone stale.  It's just MySQL that doesn't do it
 > properly, apparently.
 >
 > Karl
 >
 >
 > On Thu, May 21, 2015 at 6:49 AM, Karl Wright <daddywri@gmail.com>
 > wrote:
 >
 >> The test is:
 >>
 >> RSSFlakyHSQLDBIT
 >>
 >> It's one of the RSS connector tests, and simulates database
 >> interruption by way of a replacing the HSQLDB database instance with
 >> one that generates database errors when told to.
 >>
 >> Karl
 >>
 >>
 >> On Thu, May 21, 2015 at 6:02 AM, <Ruediger.Kurz@deutschebahn.com>
 >> wrote:
 >>
 >>> Hi Karl,
 >>>
 >>> could you please point us to the test case class, that checks the
 >>> reconnect capabilty?
 >>>
 >>> Thanks in advance!
 >>> -Rüdiger

Mime
View raw message