Java Code Examples for org.apache.tomcat.jdbc.pool.PoolProperties#setTestWhileIdle()

The following examples show how to use org.apache.tomcat.jdbc.pool.PoolProperties#setTestWhileIdle() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: DataSourceUtil.java    From das with Apache License 2.0 5 votes vote down vote up
private static DataSource createDataSource(String url, String userName, String password, String driverClass) throws Exception {
    PoolProperties p = new PoolProperties();
    //System.out.println(url);
    p.setUrl(url);
    p.setUsername(userName);
    p.setPassword(password);
    p.setDriverClassName(driverClass);
    p.setJmxEnabled(false);
    p.setTestWhileIdle(false);
    p.setTestOnBorrow(true);
    p.setTestOnReturn(false);
    p.setValidationQuery("SELECT 1");
    p.setValidationQueryTimeout(5);
    p.setValidationInterval(30000L);
    p.setTimeBetweenEvictionRunsMillis(300000);
    p.setNumTestsPerEvictionRun(50);
    p.setMaxActive(100);
    p.setMinIdle(0);
    p.setMaxWait(10000);
    p.setMaxAge(0L);
    p.setInitialSize(1);
    p.setRemoveAbandonedTimeout(60);
    p.setRemoveAbandoned(true);
    p.setLogAbandoned(true);
    p.setMinEvictableIdleTimeMillis(3600000);
    p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
            + "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");

    org.apache.tomcat.jdbc.pool.DataSource ds = new org.apache.tomcat.jdbc.pool.DataSource(p);
    ds.createPool();
    return ds;
}
 
Example 2
Source File: DataSourceUtil.java    From das with Apache License 2.0 5 votes vote down vote up
private static DataSource createDataSource(String url, String userName, String password, String driverClass)
        throws Exception {
    PoolProperties p = new PoolProperties();

    p.setUrl(url);
    p.setUsername(userName);
    p.setPassword(password);
    p.setDriverClassName(driverClass);
    p.setJmxEnabled(false);
    p.setTestWhileIdle(false);
    p.setTestOnBorrow(true);
    p.setTestOnReturn(false);
    p.setValidationQuery("SELECT 1");
    p.setValidationQueryTimeout(5);
    p.setValidationInterval(30000L);
    p.setTimeBetweenEvictionRunsMillis(5000);
    p.setMaxActive(100);
    p.setMinIdle(0);
    p.setMaxWait(10000);
    p.setMaxAge(0L);
    p.setInitialSize(1);
    p.setRemoveAbandonedTimeout(60);
    p.setRemoveAbandoned(true);
    p.setLogAbandoned(true);
    p.setMinEvictableIdleTimeMillis(30000);
    p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
            + "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");

    org.apache.tomcat.jdbc.pool.DataSource ds = new org.apache.tomcat.jdbc.pool.DataSource(p);
    ds.createPool();
    return ds;
}
 
Example 3
Source File: PoolPropertiesHelper.java    From das with Apache License 2.0 5 votes vote down vote up
public PoolProperties copy(PoolProperties from) {
    PoolProperties properties = new PoolProperties();
    properties.setUrl(from.getUrl());
    properties.setUsername(from.getUsername());
    properties.setPassword(from.getPassword());
    properties.setDriverClassName(from.getDriverClassName());

    properties.setTestWhileIdle(from.isTestWhileIdle());
    properties.setTestOnBorrow(from.isTestOnBorrow());
    properties.setTestOnReturn(from.isTestOnReturn());

    properties.setValidationQuery(from.getValidationQuery());
    properties.setValidationQueryTimeout(from.getValidationQueryTimeout());
    properties.setValidationInterval(from.getValidationInterval());

    properties.setTimeBetweenEvictionRunsMillis(from.getTimeBetweenEvictionRunsMillis());
    properties.setMinEvictableIdleTimeMillis(from.getMinEvictableIdleTimeMillis());

    properties.setMaxAge(from.getMaxAge());
    properties.setMaxActive(from.getMaxActive());
    properties.setMinIdle(from.getMinIdle());
    properties.setMaxWait(from.getMaxWait());
    properties.setInitialSize(from.getInitialSize());

    properties.setRemoveAbandonedTimeout(from.getRemoveAbandonedTimeout());
    properties.setRemoveAbandoned(from.isRemoveAbandoned());
    properties.setLogAbandoned(from.isLogAbandoned());

    properties.setConnectionProperties(from.getConnectionProperties());
    properties.setValidatorClassName(from.getValidatorClassName());

    properties.setInitSQL(from.getInitSQL());
    properties.setJmxEnabled(from.isJmxEnabled());
    properties.setJdbcInterceptors(from.getJdbcInterceptors());

    return properties;
}
 
Example 4
Source File: DFDbUtil.java    From dfactor with MIT License 5 votes vote down vote up
public static DataSource createMysqlDbSource(String url, String user, String pwd, 
		int initSize, int maxActive, int maxWait, int maxIdle, int minIdle){
	PoolProperties p = new PoolProperties();
	p.setDriverClassName("com.mysql.jdbc.Driver");
    p.setUrl(url);
    p.setUsername(user);
    p.setPassword(pwd);
    p.setJmxEnabled(true);
    p.setTestWhileIdle(true);
    p.setTestOnBorrow(false);
    p.setTestOnReturn(false);
    p.setValidationQuery("SELECT 1");
    p.setValidationInterval(30000);
    p.setTimeBetweenEvictionRunsMillis(30000);
    p.setMaxActive(maxActive);
    p.setInitialSize(initSize);
    p.setMaxWait(maxWait);   //conn timeout 
    p.setRemoveAbandonedTimeout(60);
    p.setMinEvictableIdleTimeMillis(30000);
    p.setMaxIdle(maxIdle);
    p.setMinIdle(minIdle);
    p.setLogAbandoned(true);
    p.setRemoveAbandoned(true);
    p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"+
      "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
    final DataSource dbSrc = new DataSource();
    dbSrc.setPoolProperties(p);
    return dbSrc;
}
 
Example 5
Source File: DatabasePoolConfigParser.java    From dal with Apache License 2.0 5 votes vote down vote up
public DatabasePoolConfig getDatabasePoolConfig(String name) {
    DataSourceConfigure configure = DataSourceConfigureLocatorManager.getInstance().getDataSourceConfigure(name);
    PoolProperties poolProperties = new PoolProperties();

    poolProperties.setTestWhileIdle(configure.getBooleanProperty(TESTWHILEIDLE, DEFAULT_TESTWHILEIDLE));
    poolProperties.setTestOnBorrow(configure.getBooleanProperty(TESTONBORROW, DEFAULT_TESTONBORROW));
    poolProperties.setTestOnReturn(configure.getBooleanProperty(TESTONRETURN, DEFAULT_TESTONRETURN));

    poolProperties.setValidationQuery(configure.getProperty(VALIDATIONQUERY, DEFAULT_VALIDATIONQUERY));
    poolProperties.setValidationQueryTimeout(
            configure.getIntProperty(VALIDATIONQUERYTIMEOUT, DEFAULT_VALIDATIONQUERYTIMEOUT));
    poolProperties.setValidationInterval(configure.getLongProperty(VALIDATIONINTERVAL, DEFAULT_VALIDATIONINTERVAL));

    poolProperties.setTimeBetweenEvictionRunsMillis(
            configure.getIntProperty(TIMEBETWEENEVICTIONRUNSMILLIS, DEFAULT_TIMEBETWEENEVICTIONRUNSMILLIS));
    poolProperties.setMinEvictableIdleTimeMillis(DEFAULT_MINEVICTABLEIDLETIMEMILLIS);

    poolProperties.setMaxAge(configure.getIntProperty(MAX_AGE, DEFAULT_MAXAGE));
    poolProperties.setMaxActive(configure.getIntProperty(MAXACTIVE, DEFAULT_MAXACTIVE));
    poolProperties.setMinIdle(configure.getIntProperty(MINIDLE, DEFAULT_MINIDLE));
    poolProperties.setMaxWait(configure.getIntProperty(MAXWAIT, DEFAULT_MAXWAIT));
    poolProperties.setInitialSize(configure.getIntProperty(INITIALSIZE, DEFAULT_INITIALSIZE));

    poolProperties.setRemoveAbandonedTimeout(
            configure.getIntProperty(REMOVEABANDONEDTIMEOUT, DEFAULT_REMOVEABANDONEDTIMEOUT));
    poolProperties.setRemoveAbandoned(configure.getBooleanProperty(REMOVEABANDONED, DEFAULT_REMOVEABANDONED));
    poolProperties.setLogAbandoned(configure.getBooleanProperty(LOGABANDONED, DEFAULT_LOGABANDONED));

    poolProperties
            .setConnectionProperties(configure.getProperty(CONNECTIONPROPERTIES, DEFAULT_CONNECTIONPROPERTIES));
    poolProperties.setValidatorClassName(configure.getProperty(VALIDATORCLASSNAME, DEFAULT_VALIDATORCLASSNAME));

    poolProperties.setJmxEnabled(DEFAULT_JMXENABLED);
    poolProperties.setJdbcInterceptors(configure.getProperty(JDBC_INTERCEPTORS, DEFAULT_JDBCINTERCEPTORS));

    return new DatabasePoolConfig(poolProperties);
}
 
Example 6
Source File: DataSourceUtil.java    From dal with Apache License 2.0 5 votes vote down vote up
private static DataSource createDataSource(String url, String userName, String password, String driverClass)
        throws Exception {
    PoolProperties p = new PoolProperties();

    p.setUrl(url);
    p.setUsername(userName);
    p.setPassword(password);
    p.setDriverClassName(driverClass);
    p.setJmxEnabled(false);
    p.setTestWhileIdle(false);
    p.setTestOnBorrow(true);
    p.setTestOnReturn(false);
    p.setValidationQuery("SELECT 1");
    p.setValidationQueryTimeout(5);
    p.setValidationInterval(30000L);
    p.setTimeBetweenEvictionRunsMillis(5000);
    p.setMaxActive(100);
    p.setMinIdle(0);
    p.setMaxWait(10000);
    p.setMaxAge(0L);
    p.setInitialSize(1);
    p.setRemoveAbandonedTimeout(60);
    p.setRemoveAbandoned(true);
    p.setLogAbandoned(true);
    p.setMinEvictableIdleTimeMillis(30000);
    p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
            + "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");

    org.apache.tomcat.jdbc.pool.DataSource ds = new org.apache.tomcat.jdbc.pool.DataSource(p);
    ds.createPool();
    return ds;
}
 
Example 7
Source File: SQLService.java    From odo with Apache License 2.0 5 votes vote down vote up
/**
 * Obtain instance of the SQL Service
 *
 * @return instance of SQLService
 * @throws Exception exception
 */
public static SQLService getInstance() throws Exception {
    if (_instance == null) {
        _instance = new SQLService();
        _instance.startServer();

        // default pool size is 20
        // can be overriden by env variable
        int dbPool = 20;
        if (Utils.getEnvironmentOptionValue(Constants.SYS_DATABASE_POOL_SIZE) != null) {
            dbPool = Integer.valueOf(Utils.getEnvironmentOptionValue(Constants.SYS_DATABASE_POOL_SIZE));
        }

        // initialize connection pool
        PoolProperties p = new PoolProperties();
        String connectString = "jdbc:h2:tcp://" + _instance.databaseHost + ":" + _instance.port + "/./" +
            _instance.databaseName + "/proxydb;MULTI_THREADED=true;AUTO_RECONNECT=TRUE;AUTOCOMMIT=ON";
        p.setUrl(connectString);
        p.setDriverClassName("org.h2.Driver");
        p.setUsername("sa");
        p.setJmxEnabled(true);
        p.setTestWhileIdle(false);
        p.setTestOnBorrow(true);
        p.setValidationQuery("SELECT 1");
        p.setTestOnReturn(false);
        p.setValidationInterval(5000);
        p.setTimeBetweenEvictionRunsMillis(30000);
        p.setMaxActive(dbPool);
        p.setInitialSize(5);
        p.setMaxWait(30000);
        p.setRemoveAbandonedTimeout(60);
        p.setMinEvictableIdleTimeMillis(30000);
        p.setMinIdle(10);
        p.setLogAbandoned(true);
        p.setRemoveAbandoned(true);
        _instance.datasource = new DataSource();
        _instance.datasource.setPoolProperties(p);
    }
    return _instance;
}
 
Example 8
Source File: MGRConfigReader.java    From das with Apache License 2.0 4 votes vote down vote up
/**
 * Merge existing data source and special configurations for MGR
 */
private PoolProperties mergePoolProperties(PoolProperties p) {
    PoolProperties merged = PoolPropertiesHelper.getInstance().copy(p);
    merged.setMinIdle(0); //don't cache connection
    merged.setMinEvictableIdleTimeMillis(1000);

    if(poolProperties == null) {//re-use data source configuration
        return merged;
    }

    String testWhileIdle = poolProperties.getProperty(DataSourceConfigureConstants.TESTWHILEIDLE);
    if(testWhileIdle != null){
        merged.setTestWhileIdle(Boolean.valueOf(testWhileIdle));
    }

    String testOnBorrow = poolProperties.getProperty(DataSourceConfigureConstants.TESTONBORROW);
    if(testOnBorrow != null){
        merged.setTestOnBorrow(Boolean.valueOf(testOnBorrow));
    }

    String validationInterval = poolProperties.getProperty(DataSourceConfigureConstants.VALIDATIONINTERVAL);
    if(validationInterval != null){
        merged.setValidationInterval(Long.parseLong(validationInterval));
    }

    String maxAge = poolProperties.getProperty(DataSourceConfigureConstants.MAX_AGE);
    if(maxAge != null){
        merged.setMaxAge(Long.parseLong(maxAge));
    }

    String validationQueryTimeout = poolProperties.getProperty(DataSourceConfigureConstants.VALIDATIONQUERYTIMEOUT);
    if(validationQueryTimeout != null){
        merged.setValidationInterval(Long.parseLong(validationQueryTimeout));
    }

    String validationQuery = poolProperties.getProperty(DataSourceConfigureConstants.VALIDATIONQUERY);
    if(validationQuery != null){
        merged.setValidationQuery(validationQuery);
    }

    return merged;
}
 
Example 9
Source File: PoolPropertiesHelper.java    From das with Apache License 2.0 4 votes vote down vote up
public PoolProperties convert(DataSourceConfigure config) {
    PoolProperties properties = new PoolProperties();

    /**
     * It is assumed that user name/password/url/driver class name are provided in pool config If not, it should be
     * provided by the config provider
     */
    properties.setUrl(config.getConnectionUrl());
    properties.setUsername(config.getUserName());
    properties.setPassword(config.getPassword());
    properties.setDriverClassName(config.getDriverClass());

    properties.setTestWhileIdle(config.getBooleanProperty(TESTWHILEIDLE, DEFAULT_TESTWHILEIDLE));
    properties.setTestOnBorrow(config.getBooleanProperty(TESTONBORROW, DEFAULT_TESTONBORROW));
    properties.setTestOnReturn(config.getBooleanProperty(TESTONRETURN, DEFAULT_TESTONRETURN));

    properties.setValidationQuery(config.getProperty(VALIDATIONQUERY, DEFAULT_VALIDATIONQUERY));
    properties.setValidationQueryTimeout(
            config.getIntProperty(VALIDATIONQUERYTIMEOUT, DEFAULT_VALIDATIONQUERYTIMEOUT));
    properties.setValidationInterval(config.getLongProperty(VALIDATIONINTERVAL, DEFAULT_VALIDATIONINTERVAL));

    properties.setTimeBetweenEvictionRunsMillis(
            config.getIntProperty(TIMEBETWEENEVICTIONRUNSMILLIS, DEFAULT_TIMEBETWEENEVICTIONRUNSMILLIS));
    properties.setMinEvictableIdleTimeMillis(
            config.getIntProperty(MINEVICTABLEIDLETIMEMILLIS, DEFAULT_MINEVICTABLEIDLETIMEMILLIS));

    properties.setMaxAge(config.getIntProperty(MAX_AGE, DEFAULT_MAXAGE));
    properties.setMaxActive(config.getIntProperty(MAXACTIVE, DEFAULT_MAXACTIVE));
    properties.setMinIdle(config.getIntProperty(MINIDLE, DEFAULT_MINIDLE));
    properties.setMaxWait(config.getIntProperty(MAXWAIT, DEFAULT_MAXWAIT));
    properties.setInitialSize(config.getIntProperty(INITIALSIZE, DEFAULT_INITIALSIZE));

    properties.setRemoveAbandonedTimeout(
            config.getIntProperty(REMOVEABANDONEDTIMEOUT, DEFAULT_REMOVEABANDONEDTIMEOUT));
    properties.setRemoveAbandoned(config.getBooleanProperty(REMOVEABANDONED, DEFAULT_REMOVEABANDONED));
    properties.setLogAbandoned(config.getBooleanProperty(LOGABANDONED, DEFAULT_LOGABANDONED));

    properties.setConnectionProperties(config.getProperty(CONNECTIONPROPERTIES, DEFAULT_CONNECTIONPROPERTIES));
    properties.setValidatorClassName(config.getProperty(VALIDATORCLASSNAME, DEFAULT_VALIDATORCLASSNAME));

    String initSQL = config.getProperty(INIT_SQL);
    if (initSQL != null && !initSQL.isEmpty()) {
        properties.setInitSQL(initSQL);
    }

    String initSQL2 = config.getProperty(INIT_SQL2);
    if (initSQL2 != null && !initSQL2.isEmpty()) {
        properties.setInitSQL(initSQL2);
    }

    // This are current hard coded as default value
    properties.setJmxEnabled(DEFAULT_JMXENABLED);
    properties.setJdbcInterceptors(config.getProperty(JDBC_INTERCEPTORS, DEFAULT_JDBCINTERCEPTORS));

    return properties;
}
 
Example 10
Source File: PoolPropertiesHelper.java    From dal with Apache License 2.0 4 votes vote down vote up
public PoolProperties convert(DataSourceConfigure config) {
    PoolProperties properties = new PoolProperties();

    /**
     * It is assumed that user name/password/url/driver class name are provided in pool config If not, it should be
     * provided by the config provider
     */
    properties.setUrl(config.getConnectionUrl());
    properties.setUsername(config.getUserName());
    properties.setPassword(config.getPassword());
    properties.setDriverClassName(config.getDriverClass());

    properties.setTestWhileIdle(config.getBooleanProperty(TESTWHILEIDLE, DEFAULT_TESTWHILEIDLE));
    properties.setTestOnBorrow(config.getBooleanProperty(TESTONBORROW, DEFAULT_TESTONBORROW));
    properties.setTestOnReturn(config.getBooleanProperty(TESTONRETURN, DEFAULT_TESTONRETURN));

    properties.setValidationQuery(config.getProperty(VALIDATIONQUERY, DEFAULT_VALIDATIONQUERY));
    properties.setValidationQueryTimeout(
            config.getIntProperty(VALIDATIONQUERYTIMEOUT, DEFAULT_VALIDATIONQUERYTIMEOUT));
    properties.setValidationInterval(config.getLongProperty(VALIDATIONINTERVAL, DEFAULT_VALIDATIONINTERVAL));

    properties.setTimeBetweenEvictionRunsMillis(
            config.getIntProperty(TIMEBETWEENEVICTIONRUNSMILLIS, DEFAULT_TIMEBETWEENEVICTIONRUNSMILLIS));
    properties.setMinEvictableIdleTimeMillis(
            config.getIntProperty(MINEVICTABLEIDLETIMEMILLIS, DEFAULT_MINEVICTABLEIDLETIMEMILLIS));

    properties.setMaxAge(config.getIntProperty(MAX_AGE, DEFAULT_MAXAGE));
    properties.setMaxActive(config.getIntProperty(MAXACTIVE, DEFAULT_MAXACTIVE));
    properties.setMinIdle(config.getIntProperty(MINIDLE, DEFAULT_MINIDLE));
    properties.setMaxWait(config.getIntProperty(MAXWAIT, DEFAULT_MAXWAIT));
    properties.setInitialSize(config.getIntProperty(INITIALSIZE, DEFAULT_INITIALSIZE));

    properties.setRemoveAbandonedTimeout(
            config.getIntProperty(REMOVEABANDONEDTIMEOUT, DEFAULT_REMOVEABANDONEDTIMEOUT));
    properties.setRemoveAbandoned(config.getBooleanProperty(REMOVEABANDONED, DEFAULT_REMOVEABANDONED));
    properties.setLogAbandoned(config.getBooleanProperty(LOGABANDONED, DEFAULT_LOGABANDONED));

    properties.setConnectionProperties(config.getProperty(CONNECTIONPROPERTIES, DEFAULT_CONNECTIONPROPERTIES));
    properties.setValidatorClassName(config.getProperty(VALIDATORCLASSNAME, DEFAULT_VALIDATORCLASSNAME));

    String initSQL = config.getProperty(INIT_SQL);
    if (initSQL != null && !initSQL.isEmpty())
        properties.setInitSQL(initSQL);

    String initSQL2 = config.getProperty(INIT_SQL2);
    if (initSQL2 != null && !initSQL2.isEmpty())
        properties.setInitSQL(initSQL2);

    // This are current hard coded as default value
    properties.setJmxEnabled(DEFAULT_JMXENABLED);
    properties.setJdbcInterceptors(config.getProperty(JDBC_INTERCEPTORS, DEFAULT_JDBCINTERCEPTORS));

    return properties;
}
 
Example 11
Source File: TomcatJdbcDataSourcePool.java    From Zebra with Apache License 2.0 4 votes vote down vote up
@Override
public DataSource build(DataSourceConfig config, boolean withDefaultValue) {
	PoolProperties properties = new PoolProperties();

	properties.setUrl(config.getJdbcUrl());
	properties.setUsername(config.getUsername());
	properties.setPassword(config.getPassword());
	properties.setDriverClassName(JdbcDriverClassHelper.getDriverClassNameByJdbcUrl(config.getJdbcUrl()));

	if (withDefaultValue) {
		properties.setInitialSize(getIntProperty(config, "initialPoolSize", 5));
		properties.setMaxActive(getIntProperty(config, "maxPoolSize", 30));
		properties.setMinIdle(getIntProperty(config, "minPoolSize", 5));
		properties.setMaxIdle(getIntProperty(config, "maxPoolSize", 20));
		properties.setMaxWait(getIntProperty(config, "checkoutTimeout", 1000));
		properties.setValidationQuery(getStringProperty(config, "preferredTestQuery", "SELECT 1"));
		properties.setMinEvictableIdleTimeMillis(getIntProperty(config, "minEvictableIdleTimeMillis", 300000));// 5min
		properties.setTimeBetweenEvictionRunsMillis(getIntProperty(config, "timeBetweenEvictionRunsMillis", 30000)); // 30s
		properties.setNumTestsPerEvictionRun(getIntProperty(config, "numTestsPerEvictionRun", 6));
		properties.setValidationQueryTimeout(getIntProperty(config, "validationQueryTimeout", 0));
		properties.setValidationInterval(getIntProperty(config, "validationInterval", 30000));// 30s
		properties.setRemoveAbandonedTimeout(getIntProperty(config, "removeAbandonedTimeout", 300));
		if (StringUtils.isNotBlank(getStringProperty(config, "connectionInitSql", null))) {
			properties.setInitSQL(getStringProperty(config, "connectionInitSql", null));
		}

		properties.setTestWhileIdle(true);
		properties.setTestOnBorrow(false);
		properties.setTestOnReturn(false);
		properties.setRemoveAbandoned(true);
	} else {
		try {
			PropertiesInit<PoolProperties> propertiesInit = new PropertiesInit<PoolProperties>(properties);
			propertiesInit.initPoolProperties(config);
		} catch (Exception e) {
			throw new ZebraConfigException(
			      String.format("tomcat-jdbc dataSource [%s] created error : ", config.getId()), e);
		}
	}

	org.apache.tomcat.jdbc.pool.DataSource datasource = new org.apache.tomcat.jdbc.pool.DataSource();
	datasource.setPoolProperties(properties);

	this.pool = datasource;
	LOGGER.info(String.format("New dataSource [%s] created.", config.getId()));

	return this.pool;
}