new PoolableConnectionFactory(connFactory, connectionPool, statementPool, databaseType.getValidationQuery(), false, false, txIsolationLevel.getCode());
private static void validateConnectionFactory(PoolableConnectionFactory connectionFactory) throws Exception { Connection conn = null; try { conn = (Connection) connectionFactory.makeObject(); connectionFactory.activateObject(conn); connectionFactory.validateConnection(conn); connectionFactory.passivateObject(conn); } finally { connectionFactory.destroyObject(conn); } }
this.poolableConnectionFactory = new PoolableConnectionFactory ( connectionFactory, this.connectionPool, null, null, false, true ); this.poolableConnectionFactory.setConnectionInitSql ( Arrays.asList ( connectionInitSql ) ); this.poolableConnectionFactory.setValidationQuery ( validationQuery ); this.poolableConnectionFactory.setValidationQueryTimeout ( validationQueryTimeout );
PoolableConnectionFactory poolFactory = new PoolableConnectionFactory( factory, pool, pstFactory, null, false, true); dataSource = new PoolingDataSource(poolFactory.getPool());
public static DataSource getPoolingDataSourceFromConf(Configuration conf) { final ConnectionFactory cf = new DriverManagerConnectionFactory( conf.get(LensConfConstants.SERVER_DB_JDBC_URL, LensConfConstants.DEFAULT_SERVER_DB_JDBC_URL), conf.get(LensConfConstants.SERVER_DB_JDBC_USER, LensConfConstants.DEFAULT_SERVER_DB_USER), conf.get(LensConfConstants.SERVER_DB_JDBC_PASS, LensConfConstants.DEFAULT_SERVER_DB_PASS)); final GenericObjectPool connectionPool = new GenericObjectPool(); connectionPool.setTestOnBorrow(false); connectionPool.setTestOnReturn(false); connectionPool.setTestWhileIdle(true); new PoolableConnectionFactory(cf, connectionPool, null, conf.get(LensConfConstants.SERVER_DB_VALIDATION_QUERY, LensConfConstants.DEFAULT_SERVER_DB_VALIDATION_QUERY), false, false).setDefaultAutoCommit(true); return new PoolingDataSource(connectionPool); }
PoolableConnectionFactory pcf = new PoolableConnectionFactory( pcf.setDefaultTransactionIsolation( isolationLevel.value() ); pcf.setDefaultCatalog( attributes.get( IDBDatasourceService.DEFAULT_CATALOG ) );
private PoolableConnectionFactory initializeConnectionFactory(int type, int maxActive, RepositoryConnectionConfiguration configuration) { // Will use in jndi // DataSource ds = (DataSource) ctx.lookup(RepositoryProperties.getDatabaseJndiName(properties)); try { Class.forName(configuration.getDriverClassName()); } catch (ClassNotFoundException e1) { throw new BocaRuntimeException(ExceptionConstants.DB.CODES.INVALID_CONFIG_ERROR, ExceptionConstants.DB.SUBCODES.DRIVER_NAME, e1, configuration.getDriverClassName()); } ConnectionFactory connectionFactory = new DriverManagerConnectionFactory(configuration.getJDBCUrl(), configuration.getUser(), configuration.getPassword()); connectionPool = new GenericObjectPool(); connectionPool.setMaxActive(maxActive); connectionPool.setMinIdle(1); connectionPool.setWhenExhaustedAction(GenericObjectPool.WHEN_EXHAUSTED_BLOCK); connectionPool.setMaxWait(30000); connectionPool.setMaxActive(maxActive); //KeyedObjectPoolFactory statementPool = new GenericKeyedObjectPoolFactory(null, 1000); pcf = new PoolableConnectionFactory(connectionFactory, connectionPool, null, null, false, true);// (type == // RepositoryConnection.RO // || type // == // RepositoryConnection.QUERY), // true); if ((type == RepositoryConnection.RO || type == RepositoryConnection.QUERY)) pcf.setDefaultTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); return pcf; } }
public void close() throws Exception { connectionFactory.getPool().close(); }
/** Make new RepositoryConnection */ public Object makeObject() throws Exception { Connection connection = (Connection) connectionFactory.makeObject(); connectionFactory.activateObject(connection); RepositoryConnection con = new RepositoryConnection(parentPool,cacheProvider, literalIndexer,type, configuration, dbInitFile, connection); repositoryConnectionPool.registerResetListener(con); return con; }
@Override public Object makeObject() throws Exception { Object o = super.makeObject(); objectsCreated++; return o; }
@Override public void activateObject(Object obj) throws Exception { super.activateObject(obj); objectsActivated++; }
@Override public void destroyObject(Object obj) throws Exception { super.destroyObject(obj); objectsDestroyed++; }
this.poolableConnectionFactory = new PoolableConnectionFactory ( connectionFactory, this.connectionPool, null, null, false, true ); this.poolableConnectionFactory.setConnectionInitSql ( Arrays.asList ( connectionInitSql ) ); this.poolableConnectionFactory.setValidationQuery ( validationQuery ); this.poolableConnectionFactory.setValidationQueryTimeout ( validationQueryTimeout );
log.info("Stopping DBCPCDatasourceComponent"); dsConnectionFactory.getPool().close();
@Override public synchronized Object makeObject() throws Exception { final long start = System.nanoTime(); final DatabasePoolCreateEvent event = new DatabasePoolCreateEvent(getDatabaseInfo(name)); try { return MonitoredPoolableConnectionFactory.super.makeObject(); } finally { event.setElapsedTimeNano(System.nanoTime() - start); SystemInstance.get().fireEvent(event); } }
@Override public void activateObject(final Object obj) throws Exception { final long start = System.nanoTime(); final DatabasePoolActivateEvent event = new DatabasePoolActivateEvent(getDatabaseInfo(name)); try { MonitoredPoolableConnectionFactory.super.activateObject(obj); } finally { event.setElapsedTimeNano(System.nanoTime() - start); SystemInstance.get().fireEvent(event); } } }
@Override public void destroyObject(final Object obj) throws Exception { final long start = System.nanoTime(); final DatabasePoolDestroyEvent event = new DatabasePoolDestroyEvent(getDatabaseInfo(name)); try { MonitoredPoolableConnectionFactory.super.destroyObject(obj); } finally { event.setElapsedTimeNano(System.nanoTime() - start); SystemInstance.get().fireEvent(event); } }
new PoolableConnectionFactory(connFactory, objectPool, null, null, false, true);
protected static void validateConnectionFactory(PoolableConnectionFactory connectionFactory) throws Exception { Connection conn = null; try { conn = (Connection) connectionFactory.makeObject(); connectionFactory.activateObject(conn); connectionFactory.validateConnection(conn); connectionFactory.passivateObject(conn); } finally { connectionFactory.destroyObject(conn); } }
private ObjectPool getNewConnectionPool(DataSource mySqlDataSource) { try { GenericObjectPool pool = new GenericObjectPool(null, 10); pool.setTestOnBorrow(true); ConnectionFactory factory = new DataSourceConnectionFactory(mySqlDataSource); PoolableConnectionFactory poolableConnectionFactory = new PoolableConnectionFactory(factory, pool, null, "SELECT 1 FROM DUAL", false, true); Class.forName("org.apache.commons.dbcp.PoolingDriver"); PoolingDriver driver = (PoolingDriver) DriverManager.getDriver("jdbc:apache:commons:dbcp:"); driver.registerPool("myPool", pool); return poolableConnectionFactory.getPool(); } catch (Exception e) { throw new RuntimeException("Unable to initialize connetion pooling", e); } }