You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Mark Thomas (JIRA)" <ji...@apache.org> on 2011/06/13 23:53:47 UTC
[jira] [Resolved] (POOL-150) GenericKeyedObjectPool.preparePool
does not throw an exception if supplied factory is null
[ https://issues.apache.org/jira/browse/POOL-150?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mark Thomas resolved POOL-150.
------------------------------
Resolution: Fixed
This was fixed as a side-effect of the 2.0.x re-factoring although not in the manner originally envisaged as factories may be null when GKOPs are created.
> GenericKeyedObjectPool.preparePool does not throw an exception if supplied factory is null
> ------------------------------------------------------------------------------------------
>
> Key: POOL-150
> URL: https://issues.apache.org/jira/browse/POOL-150
> Project: Commons Pool
> Issue Type: Bug
> Affects Versions: 1.4
> Environment: Java 5
> Reporter: VIJAY KUMAR
> Fix For: 2.0
>
> Original Estimate: 3h
> Remaining Estimate: 3h
>
> GenericKeyedObjectPool.preparePool doesnot throw an exception if supplied factory is null.
> GenericKeyedObjectPool.preparePool invokes ensureMinIdle() if populateImmediately is true and GenericKeyedObjectPool.ensureMinIdle() invokes GenericKeyedObjectPool.addObject() which throws an IllegalStateException if factory is null but this exception does not throw further in GenericKeyedObjectPool.preparePool.
> Catch block of GenericKeyedObjectPool..preparePool is empty.
> public synchronized void preparePool(Object key, boolean populateImmediately) {
> ObjectQueue pool = (ObjectQueue)(_poolMap.get(key));
> System.out.println(this.getClass().getName()+".preparePool() pool ["+pool +"]");
> if (null == pool) {
> pool = new ObjectQueue();
> _poolMap.put(key,pool);
> _poolList.add(key);
> }
> if (populateImmediately) {
> try {
> // Create the pooled objects
> System.out.println(this.getClass().getName()+".preparePool() Create the pooled objects ");
> ensureMinIdle(key);
> }
> catch (Exception e) {
> //Do nothing
> }
> }
> }
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira