[hibernate-dev] RE: Hibernate test suite

2006-12-13 Thread Steve Ebersole
Perhaps the custom file selector was causing some problems.  I did add a
path element to the definition of the file selector so that it had
access to the jar.driver.

-Original Message-
From: Aleksandar Kostadinov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, December 13, 2006 9:52 AM
To: Steve Ebersole
Cc: hibernate-dev@lists.jboss.org
Subject: Re: Hibernate test suite

It is very strange that copying the file to the lib dir makes things
work. I tried to replace where in build.xml jar.driver is set to hsql,
but that didn't worked also.

Any ideas?

Aleksandar Kostadinov wrote:

 Yeah, I see that the problem is not finding the jdbc driver. I meant
 that all other databases tests fail with a new reason, but the same
 for all of them.
 I asked you if there is a change in how hibernate searches for it.
 Cruisecontrol invokes ant with the following pratameters:
 -Djar.driver=${driver.jar}
 -Dhibernate.test.validatefailureexpected=true
 -lib lib

 Here driver.jar is the jdbc driver location. Is there some change that
 prevents this from working and is it possible to make this work.

 Steve Ebersole wrote:

No the failures are different.  Previously we were getting NPE; now
CCE.

The tests run fine for me in my IDE.  The only way I have been able to
reproduce such a CCE is for the JDBC driver to be unavailable when the
junit task starts up.  This causes the constructor of one of the test
classes to fail, which JUnit handles by creating a stand-in test
case
of type an inner type as defined in the TestSuite.warning() method.  I
have added extra protections to allow non-FunctionalTestCase instance
to
be handled by the FunctionalTestClassTestSuite which I will be
checking
in soon.

In the meantime, I would assume this indicates a problem with the CC
test runs not being able to find the drivers.  Hard to tell without
the
stack trace and error log...


-Original Message-
From: Aleksandar Kostadinov [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, December 13, 2006 3:30 AM
To: Steve Ebersole
Cc: hibernate-dev@lists.jboss.org
Subject: Re: Hibernate test suite

Only hsql tests work.

Other databases tests fail with the same reason.

Is there a change in the way testsuite should be ran? How to set jdbc
driver? Properties file changes?

Steve Ebersole wrote:

  

I am just now checking in the reorganization of the Hibernate test


suite
  

I have been working on for the last few days.

The main piece is the addition of the org.hibernate.junit package in


the
  

test source directory.  Specifically, tests in the test suite now
have
two well defined flavors:
1) org.hibernate.junit.UnitTestCase
2) org.hibernate.junit.functional.FunctionalTestCase

The vast majority of the Hibernate test suite falls into the later
category...

Also, a new custom TestSuite subclass was introduced for
FunctionalTestCase classes
(org.hibernate.junit.functional.FunctionalTestClassTestSuite).
FunctionalTestCase classes should use this custom test suite from
their
suite() method.  The main reason for this set up is to allow better
sharing of a SessionFactory between TestCase methods.  Previously,
the
org.hibernate.test.TestCase class had this responsibility.  The


problems
  

being that it did not have visibility into when the run completed.


So
  

it just left the schema for the last run test hanging around.  This
new
set up makes sure that does not happen, because it is the test suite
which is responsible for building/closing the SessionFactory.
FunctionalTestCase does build a SessionFactory if one is not injected
into it by FunctionalTestClassTestSuite (or some other source).  It
considers this a locally managed SessionFactory which will get
closed
after the completion of the test method; this is for running a single
method in an IDE.

Anyway, the test suite should start working again ;)

 





___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


RE: [hibernate-dev] Connection release modes

2006-12-13 Thread Steve Ebersole
I don't understand the statement about auto-commit mode connection
release.  The idea with the implied auto-commit connection release mode
is that in the case of auto-commit transaction control, there is really
no need to have the same connection for each operation as long as we are
not batching and not generally holding open JDBC resources.  What makes
you say it appears to happen for just a few operations?

With a Java transaction manager we have to give back the connection
after every SQL statement = That's not completely true.  The reason we
introduced this behavior was to circumvent resource containment checks
in environments which do such things (JBoss, WebLogic and WebSphere app
servers for example).  resource containment who-whats?  ;)  Well there
is a usage pattern which used to cause Hibernate users problems in such
environments.  Consider the case of an EJB application using Hibernate
where the EJBs call one another; something like:
SessionBeanA {
public void doSomething() {
Session s = ...;
SessionBeanB b = ...;
b.doSomethingElse();
}
}

SessionBeanB {
public void doSomethingElse() {
Session s = ...;
s.load( MyEntity.class, myKey );
// do some more work and return
}
}

Pretty innocuous, right?  The problem lies in the fact that the Session
did not actually obtain a JDBC connection until the execution of
SessionBeanB.doSomethingElse() since it delays getting a connection
until needed.  The problem, from the perspective of environments which
do perform resource containment checks, is that we just leaked a
resource... the connection!  The connection was retrieved from the DS
during the execution of SessionBeanB.doSomethingElse(), but is not
released by the time SessionBeanB.doSomethingElse() completes execution.


And just to round out the discussion, I do not know how this works in
the .Net corollaries, but after_transaction should not be used in the
case of some form of managed transaction and transacted datasources.
Doing so would cause Hibernate to try and release its connection handle
during the Synchronization.afterCompletion callback, which is
disallowed.



-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Christian
Bauer
Sent: Wednesday, December 13, 2006 5:56 AM
To: the NHibernate development list; hibernate
Subject: [hibernate-dev] Connection release modes

Bringing the two lists together for this thread.

On Dec 13, 2006, at 12:01 PM, Sergey Koshcheyev wrote:

 Christian Bauer wrote:
 Maybe NHibernate only needs two modes. NHibernate probably only need
 to release either after transaction (also auto-committed) and when
 the Session is closed.
 By the way, after reading the Hibernate source, it looks to me that
 auto-commit mode connection release only happens for a few  
 operations on
 the session, not all of them (for example refresh, lock, get with
 LockMode seem to be exempt). Was this intended (why?) or was this an
 oversight?

 With a Java transaction manager we have to
 give back the connection after every SQL statement. The service
 guarantees that we will get back the same connection inside the
 same transaction, for the next SQL statement. Is that common in .NET
 environments?

 As far as I know, it is not.

 Sergey

___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev

___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


Re: [NHibernate-development] [hibernate-dev] Connection release modes

2006-12-13 Thread Sergey Koshcheyev
Steve Ebersole wrote:
 I don't understand the statement about auto-commit mode connection
 release.  The idea with the implied auto-commit connection release mode
 is that in the case of auto-commit transaction control, there is really
 no need to have the same connection for each operation as long as we are
 not batching and not generally holding open JDBC resources.  What makes
 you say it appears to happen for just a few operations?

I guess I worded that badly. To put it in source code terms: in
SessionImpl.get(String entityName, Serializable id) there is a call to
SessionImpl.afterOperation. There is no such call in
SessionImpl.get(String entityName, Serializable id, LockMode lockMode).
Is this a mistake or is the call not needed in the second case for some
reason?

Sergey
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


[hibernate-dev] hibernate-mysql50-testsuite Build Completed With Testsuite Errors

2006-12-13 Thread qa

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-mysql50-testsuite?log=log20061213115600
TESTS FAILEDAnt Error Message:/home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:134: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:83: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build:12/13/2006 11:56:00Time to build:21 minutes 37 secondsLast changed:12/13/2006 10:19:01Last log entry:lenient of non-FunctionalTestCase cases




   Unit Tests: (1028)   Total Errors and Failures: (8)testQueryorg.hibernate.test.legacy.FooBarTesttestOneToOneGeneratororg.hibernate.test.legacy.FooBarTesttestReachabilityorg.hibernate.test.legacy.FooBarTesttestVersionedCollectionsorg.hibernate.test.legacy.FooBarTesttestReturnPropertyComponentRenameorg.hibernate.test.legacy.SQLLoaderTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTesttestManualSynchronizationorg.hibernate.test.sql.GeneralTesttestAutoDetectAliasingorg.hibernate.test.sql.GeneralTest
Modifications since last build:(first 50 of 415)10984modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestClassTestSuite.javalenient of non-FunctionalTestCase cases10982modified[EMAIL PROTECTED]//trunk/Hibernate3/build.xmlallow externalized definition of where to find JDBC drivers10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestCase.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/AllTests.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/bidi/AuctionTest2.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/MasterDetailTest.javacleanup10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Dialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/SybaseDialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Oracle9Dialect.javaadded more dialect metadata10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/link/Employee.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/linktest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/timestamp/TimestampTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/formulatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/dynamicentity/DynamicEntitySuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/GeneralTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/entitymode/multi/Valuation.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/pagination/PaginationTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/SkipLog.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/propertyref/component/complete/CompleteComponentPropertyRefTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/unconstrained/UnconstrainedTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/JPAComplianceSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/CriteriaHQLAlignmentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/ConfigurationPerformanceTest.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/lock/EJB3LockTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/instrument/buildtime/InstrumentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/SaveOrUpdateTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/DeleteTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/MySQLTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/AbstractJPATest.javatest suite reorg10977modified[EMAIL 

Re: [NHibernate-development] [hibernate-dev] Connection release modes

2006-12-13 Thread Sergey Koshcheyev
Steve Ebersole wrote:
 How did that lead to a discussion of connection release modes ;)

Err, it was the other way around :) a discussion of connection release
modes led to this. I'm trying to understand what the code does in
Hibernate to be able to port it to NHibernate.

 Mmm, I'd have to look through the code; *but* a load  lock operation
 makes no sense in an auto-commit scenario; so I'd assume it has to do
 with that...

Does refresh(Object) make sense in auto-commit? It doesn't call
afterOperation either.

Sergey
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


[hibernate-dev] A framework JDBC code change suggestion...

2006-12-13 Thread Joseph Weinstein
Hi all.

In debugging a JDBC-related issue with hibernate and
WebLogic I found a file:

org.springframework.jdbc.datasource.DriverManagerDataSource.

There is a part of this file that hurts JDBC concurrency
in multithreaded applications like WebLogic, and I have a
solution. I would like to suggest a better alternative that
would probably be named DriverDataSource.
   The problem is that *all* java.sql.DriverManager calls are
class-synchronized. This include getConnection() and some very
simple methods like DriverManager.println() which every driver
may be calling continually at runtime (whether or not there is
a DriverManager log stream). The constructor for SQLException
calls this method.
   This means that one slow call to DriverManager.getConnection()
can temporarily block all other JDBC in the whole JVM. In some
cases we have even seen deadlocks where one thread that holds the
DriverManager lock calls another thread that wants to do JDBC.
   The solution is to remove all calls to DriverManager.getConnection()
and replace them with a simple call to Driver.connect(). In fact,
this is what the DriverManager itself does, except that for every
getConnection() call, the DriverManager goes through it's list of
every registered driver in the JVM, trying each one with your URL
and properties until it finds one that doesn't throw an exception
and returns a connection. I decompiled and altered the
DriverManagerDataSource to do that, for a customer to try, and I
have attached it to this email as a suggestion for your consideration.
HTH,
Joe Weinstein at BEA 
Systems___
Notice:  This email message, together with any attachments, may contain
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated
entities,  that may be confidential,  proprietary,  copyrighted  and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) 
// Source File Name:   DriverManagerDataSource.java

package org.springframework.jdbc.datasource;

import java.sql.*;
import java.util.Properties;
import org.apache.commons.logging.Log;
import org.springframework.jdbc.CannotGetJdbcConnectionException;
import org.springframework.util.ClassUtils;
import org.springframework.util.StringUtils;

// Referenced classes of package org.springframework.jdbc.datasource:
//AbstractDataSource

public class DriverManagerDataSource extends AbstractDataSource
{

public DriverManagerDataSource()
{
}

public DriverManagerDataSource(String driverClassName, String url, String 
username, String password)
throws CannotGetJdbcConnectionException
{
setDriverClassName(driverClassName);
setUrl(url);
setUsername(username);
setPassword(password);
}

public DriverManagerDataSource(String url, String username, String password)
throws CannotGetJdbcConnectionException
{
setUrl(url);
setUsername(username);
setPassword(password);
}

public DriverManagerDataSource(String url)
throws CannotGetJdbcConnectionException
{
setUrl(url);
}

public void setDriverClassName(String driverClassName)
throws CannotGetJdbcConnectionException
{
if(!StringUtils.hasText(driverClassName))
throw new IllegalArgumentException(driverClassName must not be 
empty);
this.driverClassName = driverClassName;
try
{
d = (Driver)ClassUtils.forName(this.driverClassName).newInstance();
}
catch(ClassNotFoundException ex)
{
throw new CannotGetJdbcConnectionException(Could not load JDBC 
driver class [ + this.driverClassName + ], ex);
}
catch(Exception ex2)
{
throw new CannotGetJdbcConnectionException(Could not load JDBC 
driver class [ + this.driverClassName + ], new 
SQLException(ex2.getMessage()) );
}
if(logger.isInfoEnabled())
logger.info(Loaded JDBC driver:  + this.driverClassName);
}

public String getDriverClassName()
{
return driverClassName;
}

public void setUrl(String url)
{
if(!StringUtils.hasText(url))
{
throw new IllegalArgumentException(url must not be empty);
} else
{
this.url = url;
return;
}
}

public String getUrl()
{
return url;
}

public void setUsername(String username)
{
this.username = username;
}

public String getUsername()
{
return username;
}

public void setPassword(String password)
   

[hibernate-dev] Regarding Alex Bacon's Major issue with Hibernate Filters circa Sept 11, 2006...

2006-12-13 Thread Edmund Grossenbacher
I have a similar situation to what Alex Bacon described in his Major
issue with Hibernate Filters thread in September, and I'm wondering if
there was ever a palatable resolution.
 
The basic notion is that I have an object graph consisting of
relationships of varying multiplicity.  For various reasons I wish to
introduce effective dates into the database.  The documented Filter
example of Employee and Department pretty much illustrates the idea.
Lets say that at any given time, an Employee belongs to one Department,
and a Department has multiple employees (so Department has a one-to-many
bidirectional relationship with Employee.)  Employee contains a foreign
key back to Department, which is the canonical way to represent
one-to-many relationships in the database - by putting a foreign key on
the many side.
 
Over time, an employee can move between departments, so without
considering time the relationship between Employee and Department is
many-to-many.  Note that I don't actually need a many-to-many join table
here: Employee still contains an FK back to Department, and a given
Employee ID now appears multiple times in the Employee table with
non-overlapping effective date time intervals.  At particular point in
time, only ONE Employee row is effective.
 
I only care about the relationships that exist at particular points in
time.  Therefore, I wish to apply a Filter that *I know* will always
produce a one-to-many relationship between Department and Employee.
Steve's comment suggests that this is a misapplication of Filter -
because to assume that Filter will slice the one-to-many relationship
(at a single point in time) out of the many-to-many relationship that is
actually stored in the database would be using Filters to change
multiplicity, and that is apparently NOT the intent.
 
Fine:  so forget Filters.  Is there another way to get this same effect?
I know one way:  I can create views that reproduce the full object
graph at each point in time that is of interest.  Those views will have
the correct one-to-many (or one-to-one) relationships in them. I could
then map the views with Hibernate.  The downside here is, I *also* need
to map the current time of the real underlying tables, so that I can
manipulate them to write updates.  That means I need essentially two
mappings of the same set of objects, which sounds like more work.
 
The Filter concept seems so close to what I want...  If Entity-level
Filters are ALWAYS applied to generated SQL it seems like this would
work, at least if I always enable the Filter before doing any operations
involving timesliced entities.  If autoenabled Filters were present (per
ANN-433) it seems like the solution would be even sweeter.
 
Has anyone had REAL experience using timeslicing (effective dates, etc)
in the database and mapping the single-point-in-time results with
Hibernate?  I've seen this pattern in several databases in my career -
although typically it seems to appear in warehouse environments more
than in production databases..;
 
-ed
 
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


[hibernate-dev] hibernate-sqlserver-jtds-testsuite Build Completed With Testsuite Errors

2006-12-13 Thread qa

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-sqlserver-jtds-testsuite?log=log20061213132206
TESTS FAILEDAnt Error Message:/home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:120: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:83: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build:12/13/2006 13:22:06Time to build:11 minutes 16 secondsLast changed:12/31/2005 20:44:14Last log entry:less noisy




   Unit Tests: (1028)   Total Errors and Failures: (2)testReturnPropertyComponentRenameorg.hibernate.test.legacy.SQLLoaderTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTest
Modifications since last build:(first 50 of 2716)10984modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestClassTestSuite.javalenient of non-FunctionalTestCase cases10982modified[EMAIL PROTECTED]//trunk/Hibernate3/build.xmlallow externalized definition of where to find JDBC drivers10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestCase.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/AllTests.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/bidi/AuctionTest2.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/MasterDetailTest.javacleanup10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Dialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/SybaseDialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Oracle9Dialect.javaadded more dialect metadata10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/link/Employee.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/linktest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/timestamp/TimestampTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/formulatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/dynamicentity/DynamicEntitySuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/GeneralTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/entitymode/multi/Valuation.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/pagination/PaginationTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/SkipLog.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/propertyref/component/complete/CompleteComponentPropertyRefTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/unconstrained/UnconstrainedTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/JPAComplianceSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/CriteriaHQLAlignmentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/ConfigurationPerformanceTest.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/lock/EJB3LockTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/instrument/buildtime/InstrumentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/SaveOrUpdateTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/DeleteTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/MySQLTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/AbstractJPATest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/cache/BaseCacheProviderTestCase.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/HQLTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/generated/GeneratedPropertySuite.javatest suite reorg10977modified[EMAIL 

Re: [hibernate-dev] A framework JDBC code change suggestion...

2006-12-13 Thread Joseph Weinstein
At 01:05 PM 12/13/2006, Max Rydahl Andersen wrote:
Hi Joseph,

It would probably be more relevant to report this to Spring since the
code you are referring to is not within Hibernate.

p.s. first time i've seen someone having to decompile opensource classes
to fix things ;)


Thanks, I'm just flying by the seat of the pants, never looked
for the source. This must be clear how quick-and-dirty because I chose
the wrong dev group to talk to...
thanks
Joe


/max

Hi all.

In debugging a JDBC-related issue with hibernate and
WebLogic I found a file:

org.springframework.jdbc.datasource.DriverManagerDataSource.

There is a part of this file that hurts JDBC concurrency
in multithreaded applications like WebLogic, and I have a
solution. I would like to suggest a better alternative that
would probably be named DriverDataSource.
   The problem is that *all* java.sql.DriverManager calls are
class-synchronized. This include getConnection() and some very
simple methods like DriverManager.println() which every driver
may be calling continually at runtime (whether or not there is
a DriverManager log stream). The constructor for SQLException
calls this method.
   This means that one slow call to DriverManager.getConnection()
can temporarily block all other JDBC in the whole JVM. In some
cases we have even seen deadlocks where one thread that holds the
DriverManager lock calls another thread that wants to do JDBC.
   The solution is to remove all calls to DriverManager.getConnection()
and replace them with a simple call to Driver.connect(). In fact,
this is what the DriverManager itself does, except that for every
getConnection() call, the DriverManager goes through it's list of
every registered driver in the JVM, trying each one with your URL
and properties until it finds one that doesn't throw an exception
and returns a connection. I decompiled and altered the
DriverManagerDataSource to do that, for a customer to try, and I
have attached it to this email as a suggestion for your consideration.
HTH,
Joe Weinstein at BEA  
Systems___
Notice:  This email message, together with any attachments, may contain
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated
entities,  that may be confidential,  proprietary,  copyrighted  and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.



-- 
--
Max Rydahl Andersen
callto://max.rydahl.andersen

Hibernate
[EMAIL PROTECTED]
http://hibernate.org

JBoss a division of Red Hat
[EMAIL PROTECTED]


___
Notice:  This email message, together with any attachments, may contain
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated
entities,  that may be confidential,  proprietary,  copyrighted  and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.
___
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev


[hibernate-dev] hibernate-mysql-testsuite Build Completed With Testsuite Errors

2006-12-13 Thread qa

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-mysql-testsuite?log=log20061213221232
TESTS FAILEDAnt Error Message:/home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:127: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:83: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build:12/13/2006 22:12:32Time to build:25 minutes 48 secondsLast changed:12/31/2005 20:44:14Last log entry:less noisy




   Unit Tests: (1028)   Total Errors and Failures: (14)testDom4jorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestMapIndexEmisionorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestQueryorg.hibernate.test.legacy.FooBarTesttestOneToOneGeneratororg.hibernate.test.legacy.FooBarTesttestReachabilityorg.hibernate.test.legacy.FooBarTesttestVersionedCollectionsorg.hibernate.test.legacy.FooBarTesttestReturnPropertyComponentRenameorg.hibernate.test.legacy.SQLLoaderTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTesttestPaginationorg.hibernate.test.pagination.PaginationTesttestManualSynchronizationorg.hibernate.test.sql.GeneralTesttestAutoDetectAliasingorg.hibernate.test.sql.GeneralTesttestScalarStoredProcedureorg.hibernate.test.sql.MySQLTesttestParameterHandlingorg.hibernate.test.sql.MySQLTesttestEntityStoredProcedureorg.hibernate.test.sql.MySQLTest
Modifications since last build:(first 50 of 2718)10988modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/DerbyDialect.javaDerby tests10987modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/lob/LobMappings.hbm.xmladded length attributes for running on Derby10984modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestClassTestSuite.javalenient of non-FunctionalTestCase cases10982modified[EMAIL PROTECTED]//trunk/Hibernate3/build.xmlallow externalized definition of where to find JDBC drivers10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestCase.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/AllTests.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/bidi/AuctionTest2.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/MasterDetailTest.javacleanup10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Dialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/SybaseDialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Oracle9Dialect.javaadded more dialect metadata10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/timestamp/TimestampTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/formulatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/dynamicentity/DynamicEntitySuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/GeneralTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/entitymode/multi/Valuation.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/pagination/PaginationTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/SkipLog.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/propertyref/component/complete/CompleteComponentPropertyRefTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/unconstrained/UnconstrainedTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/JPAComplianceSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/CriteriaHQLAlignmentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/ConfigurationPerformanceTest.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/lock/EJB3LockTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/instrument/buildtime/InstrumentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/SaveOrUpdateTest.javatest suite 

[hibernate-dev] hibernate-hsqldb-testsuite Build Completed With Testsuite Errors

2006-12-13 Thread qa

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-hsqldb-testsuite?log=log20061213223925
TESTS FAILEDAnt Error Message:/home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:92: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:83: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build:12/13/2006 22:39:25Time to build:9 minutes 36 secondsLast changed:12/31/2005 20:44:14Last log entry:less noisy




   Unit Tests: (1028)   Total Errors and Failures: (2)testReturnPropertyComponentRenameorg.hibernate.test.legacy.SQLLoaderTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTest
Modifications since last build:(first 50 of 2718)10988modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/DerbyDialect.javaDerby tests10987modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/lob/LobMappings.hbm.xmladded length attributes for running on Derby10984modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestClassTestSuite.javalenient of non-FunctionalTestCase cases10982modified[EMAIL PROTECTED]//trunk/Hibernate3/build.xmlallow externalized definition of where to find JDBC drivers10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestCase.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/AllTests.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/bidi/AuctionTest2.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/MasterDetailTest.javacleanup10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Dialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/SybaseDialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Oracle9Dialect.javaadded more dialect metadata10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/timestamp/TimestampTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/formulatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/dynamicentity/DynamicEntitySuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/GeneralTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/entitymode/multi/Valuation.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/pagination/PaginationTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/SkipLog.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/propertyref/component/complete/CompleteComponentPropertyRefTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/unconstrained/UnconstrainedTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/JPAComplianceSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/CriteriaHQLAlignmentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/ConfigurationPerformanceTest.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/lock/EJB3LockTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/instrument/buildtime/InstrumentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/SaveOrUpdateTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/DeleteTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/MySQLTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/AbstractJPATest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/cache/BaseCacheProviderTestCase.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/HQLTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/generated/GeneratedPropertySuite.javatest suite 

[hibernate-dev] hibernate-mysql50-testsuite Build Completed With Testsuite Errors

2006-12-13 Thread qa

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-mysql50-testsuite?log=log20061213225003
TESTS FAILEDAnt Error Message:/home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:134: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:83: The following error occurred while executing this line: /home/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build:12/13/2006 22:50:03Time to build:21 minutes 26 secondsLast changed:12/13/2006 13:37:01Last log entry:Derby tests




   Unit Tests: (1028)   Total Errors and Failures: (8)testQueryorg.hibernate.test.legacy.FooBarTesttestOneToOneGeneratororg.hibernate.test.legacy.FooBarTesttestReachabilityorg.hibernate.test.legacy.FooBarTesttestVersionedCollectionsorg.hibernate.test.legacy.FooBarTesttestReturnPropertyComponentRenameorg.hibernate.test.legacy.SQLLoaderTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTesttestManualSynchronizationorg.hibernate.test.sql.GeneralTesttestAutoDetectAliasingorg.hibernate.test.sql.GeneralTest
Modifications since last build:(first 50 of 417)10988modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/DerbyDialect.javaDerby tests10987modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/lob/LobMappings.hbm.xmladded length attributes for running on Derby10984modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestClassTestSuite.javalenient of non-FunctionalTestCase cases10982modified[EMAIL PROTECTED]//trunk/Hibernate3/build.xmlallow externalized definition of where to find JDBC drivers10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/functional/FunctionalTestCase.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/AllTests.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/bidi/AuctionTest2.javacleanup10981modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/MasterDetailTest.javacleanup10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Dialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/SybaseDialect.javaadded more dialect metadata10978modified[EMAIL PROTECTED]//trunk/Hibernate3/src/org/hibernate/dialect/Oracle9Dialect.javaadded more dialect metadata10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/timestamp/TimestampTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/onetoone/formulatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/dynamicentity/DynamicEntitySuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/GeneralTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/entitymode/multi/Valuation.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/pagination/PaginationTest.javatest suite reorg10977added[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/junit/SkipLog.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/propertyref/component/complete/CompleteComponentPropertyRefTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/unconstrained/UnconstrainedTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/JPAComplianceSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/hql/CriteriaHQLAlignmentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/legacy/ConfigurationPerformanceTest.javatest suite reorg10977deleted[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/lock/EJB3LockTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/instrument/buildtime/InstrumentTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/collection/CollectionSuite.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/SaveOrUpdateTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/ops/DeleteTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/sql/MySQLTest.javatest suite reorg10977modified[EMAIL PROTECTED]//trunk/Hibernate3/test/org/hibernate/test/jpa/AbstractJPATest.javatest suite reorg10977modified[EMAIL