Skip to content

Commit

Permalink
HSEARCH-1792 Make sure to tear down the Multi-tenant enabled H2 Conne…
Browse files Browse the repository at this point in the history
…ctionPool
  • Loading branch information
Sanne committed Apr 14, 2015
1 parent d307e9b commit afd08e1
Showing 1 changed file with 17 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ protected void configure(Configuration cfg) {
@Override
@Before
public void setUp() throws Exception {
ClockMultitenantConnectionProvider.start();
super.setUp();

exportSchema( ClockMultitenantConnectionProvider.GEOCHRON_PROVIDER, getCfg() );
Expand Down Expand Up @@ -270,6 +271,7 @@ public void deleteEntities() throws Exception {
session = openSessionWithTenantId( GEOCHRON_TID );
deleteClocks( session );
session.close();
ClockMultitenantConnectionProvider.stop();
}

private void deleteClocks(Session session) {
Expand Down Expand Up @@ -315,8 +317,8 @@ public void release() throws SQLException {

public static class ClockMultitenantConnectionProvider extends AbstractMultiTenantConnectionProvider {

private static final ConnectionProvider METAMEC_PROVIDER = buildConnectionProvider( METAMEC_TID );
private static final ConnectionProvider GEOCHRON_PROVIDER = buildConnectionProvider( GEOCHRON_TID );
private static DriverManagerConnectionProviderImpl METAMEC_PROVIDER;
private static DriverManagerConnectionProviderImpl GEOCHRON_PROVIDER;

@Override
protected ConnectionProvider getAnyConnectionProvider() {
Expand Down Expand Up @@ -348,6 +350,19 @@ public static Properties getConnectionProviderProperties(String dbName) {
props.put( Environment.PASS, "" );
return props;
}

static void stop() {
METAMEC_PROVIDER.stop();
GEOCHRON_PROVIDER.stop();
//Cleanup hacky static variables
METAMEC_PROVIDER = null;
GEOCHRON_PROVIDER = null;
}

static void start() {
METAMEC_PROVIDER = buildConnectionProvider( METAMEC_TID );
GEOCHRON_PROVIDER = buildConnectionProvider( GEOCHRON_TID );
}
}

}

0 comments on commit afd08e1

Please sign in to comment.