You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by bl...@apache.org on 2003/03/31 20:32:55 UTC
cvs commit: avalon-excalibur/datasource/src/java/org/apache/avalon/excalibur/datasource JdbcConnectionPool.java ResourceLimitingJdbcDataSource.java
bloritsch 2003/03/31 10:32:55
Modified: datasource build.xml default.properties
datasource/src/java/org/apache/avalon/excalibur/datasource
JdbcConnectionPool.java
ResourceLimitingJdbcDataSource.java
Log:
I can't get HSQL to work, although with a real DB it works
Revision Changes Path
1.43 +7 -11 avalon-excalibur/datasource/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/avalon-excalibur/datasource/build.xml,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -r1.42 -r1.43
--- build.xml 31 Mar 2003 16:23:14 -0000 1.42
+++ build.xml 31 Mar 2003 18:32:54 -0000 1.43
@@ -277,24 +277,16 @@
<echo message="Performing Unit Tests" />
<mkdir dir="${build.tests}"/>
- <!--
<parallel>
<sequential>
<java fork="true" classname="org.hsqldb.Server">
<classpath refid="test.class.path"/>
</java>
- <waitfor maxwait="5" maxwaitunit="minute">
- <available file="test.done"/>
- </waitfor>
- <java fork="true" classname="org.hsqldb.Server">
- <classpath refid="test.class.path"/>
- </java>
</sequential>
<sequential>
<waitfor maxwait="30" maxwaitunit="second">
<available file="test.data"/>
</waitfor>
- -->
<junit fork="true"
haltonfailure="${junit.failonerror}"
printsummary="yes"
@@ -318,10 +310,14 @@
</fileset>
</batchtest>
</junit>
- <echo file="test.done" append="false">done</echo>
- <!--
+ <sql driver="${test.jdbc.driver}"
+ url="${test.jdbc.url}"
+ user="${test.jdbc.user}"
+ password="${test.jdbc.password}">
+ SHUTDOWN;
+ </sql>
</sequential>
- </parallel> -->
+ </parallel>
<delete>
<fileset dir="." includes="test.*"/>
</delete>
1.24 +2 -2 avalon-excalibur/datasource/default.properties
Index: default.properties
===================================================================
RCS file: /home/cvs/avalon-excalibur/datasource/default.properties,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- default.properties 31 Mar 2003 16:23:14 -0000 1.23
+++ default.properties 31 Mar 2003 18:32:54 -0000 1.24
@@ -67,10 +67,10 @@
test.jdbc.driver.jar=lib/hsqldb-1.7.1.jar
test.jdbc.driver=org.hsqldb.jdbcDriver
-test.jdbc.url=jdbc:hsqldb:.
+test.jdbc.url=jdbc:hsqldb:hsql://localhost
test.jdbc.user=SA
test.jdbc.password=
-test.jdbc=true
+skip.tests=true
# --------------------------------------------------
1.24 +8 -4 avalon-excalibur/datasource/src/java/org/apache/avalon/excalibur/datasource/JdbcConnectionPool.java
Index: JdbcConnectionPool.java
===================================================================
RCS file: /home/cvs/avalon-excalibur/datasource/src/java/org/apache/avalon/excalibur/datasource/JdbcConnectionPool.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- JdbcConnectionPool.java 25 Mar 2003 21:34:01 -0000 1.23
+++ JdbcConnectionPool.java 31 Mar 2003 18:32:55 -0000 1.24
@@ -70,6 +70,7 @@
extends HardResourceLimitingPool
implements Runnable, Disposable, Initializable
{
+ private Exception m_cause = null;
private Thread m_initThread;
private final boolean m_autoCommit;
private boolean m_noConnections;
@@ -85,7 +86,7 @@
{
super( factory, controller, max );
m_min = min;
-
+ m_initialized = false;
m_autoCommit = autoCommit;
}
@@ -167,6 +168,8 @@
{
if( m_noConnections )
{
+ if (m_cause != null) throw m_cause;
+
throw new IllegalStateException( "There are no connections in the pool, check your settings." );
}
else if( m_initThread == null )
@@ -257,9 +260,10 @@
}
catch( Exception e )
{
- if( getLogger().isDebugEnabled() )
+ m_cause = e;
+ if( getLogger().isWarnEnabled() )
{
- getLogger().debug( "Caught an exception during initialization", e );
+ getLogger().warn( "Caught an exception during initialization", e );
}
}
}
1.5 +8 -4 avalon-excalibur/datasource/src/java/org/apache/avalon/excalibur/datasource/ResourceLimitingJdbcDataSource.java
Index: ResourceLimitingJdbcDataSource.java
===================================================================
RCS file: /home/cvs/avalon-excalibur/datasource/src/java/org/apache/avalon/excalibur/datasource/ResourceLimitingJdbcDataSource.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ResourceLimitingJdbcDataSource.java 27 Feb 2003 15:20:55 -0000 1.4
+++ ResourceLimitingJdbcDataSource.java 31 Mar 2003 18:32:55 -0000 1.5
@@ -211,10 +211,14 @@
if( !m_configured ) throw new IllegalStateException( "Not Configured" );
if( m_disposed ) throw new IllegalStateException( "Already Disposed" );
- Connection connection;
+ Object connection;
try
{
- connection = (Connection)m_pool.get();
+ connection = m_pool.get();
+ if (null == connection)
+ {
+ throw new SQLException("Could not return Connection");
+ }
}
catch( SQLException e )
{
@@ -235,7 +239,7 @@
throw new NoAvailableConnectionException( e.getMessage() );
}
- return connection;
+ return (Connection)connection;
}
/*---------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: cvs-unsubscribe@avalon.apache.org
For additional commands, e-mail: cvs-help@avalon.apache.org