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

2007-08-22 Thread jboss-qa-internal

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-mysql-testsuite?log=log20070822050620
TESTS FAILEDAnt Error Message: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:147: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:89: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build: 08/22/2007 05:06:20Time to build: 19 minutes 0 secondsLast changed: 12/30/2005 15:59:42Last log entry: Fixed BMT idiom




    Unit Tests: (1075)    Total Errors and Failures: (6)testDom4jorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestMapIndexEmisionorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestPaginationorg.hibernate.test.pagination.PaginationTesttestScalarStoredProcedureorg.hibernate.test.sql.hand.custom.mysql.MySQLCustomSQLTesttestParameterHandlingorg.hibernate.test.sql.hand.custom.mysql.MySQLCustomSQLTesttestEntityStoredProcedureorg.hibernate.test.sql.hand.custom.mysql.MySQLCustomSQLTest 
 Modifications since last build: (first 50 of 364)13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/LoadContexts.javaHHH-2795 : CollectionLoadContext processing for empty collections 13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/CollectionLoadContext.javaHHH-2795 : CollectionLoadContext processing for empty collections 13932modified[EMAIL PROTECTED]//core/branches/Branch_3_2/test/org/hibernate/test/legacy/MasterDetailTest.javaskip org.hibernate.test.legacy.MasterDetailTest#testCachedCollectionRefresh when connection is enforcing (at least) serializable isolation13932modified[EMAIL PROTECTED]//core/branches/Branch_3_2/test/org/hibernate/junit/functional/FunctionalTestCase.javaskip org.hibernate.test.legacy.MasterDetailTest#testCachedCollectionRefresh when connection is enforcing (at least) serializable isolation12949modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/persister/entity/AbstractEntityPersister.javaHHH-2503 : Throws JDBCExceptionHelper.convert() in AbstractEntityPersister.processGeneratedProperties()12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/OptionalJoinTest.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/persister/entity/AbstractEntityPersister.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/JoinSuite.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/Thing.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/AllTests.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/Thing.hbm.xmlHHH-2320 : Update detached entity with null joined properties changed to non-null12941modified[EMAIL PROTECTED]//core/branches/Branch_3_2/src/org/hibernate/dialect/Oracle8iDialect.javaHHH-2788 : missing type mapping for DATE and TIME on Oracle8iDialect12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/Employee.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/type/TypeFactory.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/ComponentTest.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/User.hbm.xmlHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/OptionalComponent.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12890modified[EMAIL PROTECTED]//core/branches/Branch_3_2/src/org/hibernate/util/PropertiesHelper.javaHHH-2761 : null and empty string consistency in PropertiesHelper12865modified[EMAIL PROTECTED]//core/branches/Branch_3_2/changelog.txtprep 3.2.5 release12865modified[EMAIL PROTECTED]//core/branches/Branch_3_2/readme.txtprep 3.2.5 release12865mo

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

2007-08-22 Thread jboss-qa-internal

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-sybase-testsuite?log=log20070822060125
TESTS FAILEDAnt Error Message: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:126: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:89: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build: 08/22/2007 06:01:25Time to build: 15 minutes 1 secondLast changed: 12/30/2005 15:59:42Last log entry: Fixed BMT idiom




    Unit Tests: (1075)    Total Errors and Failures: (49)testOrphanDeleteOnDeleteorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteAfterPersistorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteAfterPersistAndFlushorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteAfterLockorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteOnSaveOrUpdateorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteOnSaveOrUpdateAfterSerializationorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestOrphanDeleteOnMergeorg.hibernate.test.collection.backref.map.compkey.BackrefCompositeMapKeyTesttestComponentQueriesorg.hibernate.test.component.basic.ComponentTesttestSerializationFailsOnAfterStatementAggressiveReleaseWithOpenResourcesorg.hibernate.test.connections.AggressiveReleaseTesttestSerializationFailsOnAfterStatementAggressiveReleaseWithOpenResourcesorg.hibernate.test.connections.CurrentSessionConnectionTesttestSubselectorg.hibernate.test.criteria.CriteriaQueryTesttestDom4jorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestMapIndexEmisionorg.hibernate.test.entitymode.dom4j.basic.Dom4jTesttestStrorg.hibernate.test.hql.ASTParserLoadingTesttestExtractorg.hibernate.test.hql.ASTParserLoadingTesttestEJBQLFunctionsorg.hibernate.test.hql.ASTParserLoadingTesttestInterfaceProxiesorg.hibernate.test.interfaceproxy.InterfaceProxyTesttestJpaStylePositionalParametersInNativeSqlorg.hibernate.test.jpa.ql.NativeQueryTesttestOnCascadeDeleteorg.hibernate.test.legacy.FooBarTesttestCollectionsInSelectorg.hibernate.test.legacy.FooBarTesttestCompositeKeyPathExpressionsorg.hibernate.test.legacy.FumTesttestUnionSubclassorg.hibernate.test.legacy.IJ2TesttestCollectionorg.hibernate.test.legacy.MultiTableTesttestProxyReuseorg.hibernate.test.legacy.ParentChildTesttestBlobCloborg.hibernate.test.legacy.SQLFunctionsTesttestBoundedMaterializedBlobAccessorg.hibernate.test.lob.BlobTesttestBoundedBlobLocatorAccessorg.hibernate.test.lob.BlobTesttestUnboundedBlobLocatorAccessorg.hibernate.test.lob.BlobTesttestBoundedMaterializedClobAccessorg.hibernate.test.lob.ClobTesttestBoundedClobLocatorAccessorg.hibernate.test.lob.ClobTesttestUnboundedClobLocatorAccessorg.hibernate.test.lob.ClobTesttestNewSerializableTypeorg.hibernate.test.lob.SerializableTypeTesttestManyToManyWithFormulaorg.hibernate.test.manytomany.ManyToManyTesttestMixedInheritanceorg.hibernate.test.mixed.MixedTesttestOneToOneOnSubclassorg.hibernate.test.onetoone.joined.JoinedSubclassOneToOneTesttestOneToOneOnSubclassorg.hibernate.test.onetoone.nopojo.DynamicMapOneToOneTesttestPaginationorg.hibernate.test.pagination.PaginationTesttestOneToOnePropertyReforg.hibernate.test.propertyref.inheritence.union.UnionSubclassPropertyRefTesttestScalarStoredProcedureorg.hibernate.test.sql.hand.custom.sybase.SybaseCustomSQLTesttestParameterHandlingorg.hibernate.test.sql.hand.custom.sybase.SybaseCustomSQLTesttestEntityStoredProcedureorg.hibernate.test.sql.hand.custom.sybase.SybaseCustomSQLTesttestMappedAliasStrategyorg.hibernate.test.sql.hand.query.NativeSQLQueriesTesttestAutoDetectAliasingorg.hibernate.test.sql.hand.query.NativeSQLQueriesTesttestQueryStatGatheringorg.hibernate.test.stats.StatsTesttestCurrentSessionWithScrollorg.hibernate.test.tm.CMTTesttestUnionSubclassFetchModeorg.hibernate.test.unionsubclass.UnionSubclassTesttestJoinedSubclassorg.hibernate.test.ondelete.OnDeleteTesttestQueryCacheInvalidationorg.hibernate.test.querycache.QueryCacheTest 
 Modifications since last build: (first 50 of 364)13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/LoadContexts.javaHHH-2795 : CollectionLoadContext processing for empty collections 13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/CollectionLoadContext.javaHHH-2795 : CollectionLoadContext processing for empty collections 13932modified[EMAIL PROTECTED]//core/branches/Branch_3_2/test/org/hibernate/test/legacy/MasterDetailTest.javaskip 

[hibernate-dev] hibernate-db2-8.2-testsuite Build Completed With Testsuite Errors

2007-08-22 Thread jboss-qa-internal

View results here -> http://cruisecontrol.jboss.com/cc/buildresults/hibernate-db2-8.2-testsuite?log=log20070822064026
TESTS FAILEDAnt Error Message: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:178: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-hibernate-db-matrix.xml:89: The following error occurred while executing this line: /qa/services/cruisecontrol/work/scripts/build-common-targets.xml:11: Build Successful - Tests completed with errors or failures.Date of build: 08/22/2007 06:40:26Time to build: 34 minutes 57 secondsLast changed: 08/19/2007 19:06:39Last log entry: HHH-2795 : CollectionLoadContext processing for empty collections 




    Unit Tests: (1066)    Total Errors and Failures: (12)testExpressionWithParamInFunctionorg.hibernate.test.hql.ASTParserLoadingTesttestDecimalLiteralsorg.hibernate.test.hql.ASTParserLoadingTesttestInsertWithGeneratedTimestampVersionorg.hibernate.test.hql.BulkManipulationTesttestScrollingJoinFetchesForwardorg.hibernate.test.hql.ScrollableCollectionFetchingTestunknownorg.hibernate.test.jpa.lock.JPALockTesttestCriteriaorg.hibernate.test.legacy.MultiTableTesttestBoundedClobLocatorAccessorg.hibernate.test.lob.ClobTesttestScalarStoredProcedureorg.hibernate.test.sql.hand.custom.db2.DB2CustomSQLTesttestParameterHandlingorg.hibernate.test.sql.hand.custom.db2.DB2CustomSQLTesttestEntityStoredProcedureorg.hibernate.test.sql.hand.custom.db2.DB2CustomSQLTestunknownorg.hibernate.test.tm.CMTTesttestBoundedBlobLocatorAccessorg.hibernate.test.lob.BlobTest 
 Modifications since last build: (first 50 of 79)13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/LoadContexts.javaHHH-2795 : CollectionLoadContext processing for empty collections 13936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/engine/loading/CollectionLoadContext.javaHHH-2795 : CollectionLoadContext processing for empty collections 13932modified[EMAIL PROTECTED]//core/branches/Branch_3_2/test/org/hibernate/test/legacy/MasterDetailTest.javaskip org.hibernate.test.legacy.MasterDetailTest#testCachedCollectionRefresh when connection is enforcing (at least) serializable isolation13932modified[EMAIL PROTECTED]//core/branches/Branch_3_2/test/org/hibernate/junit/functional/FunctionalTestCase.javaskip org.hibernate.test.legacy.MasterDetailTest#testCachedCollectionRefresh when connection is enforcing (at least) serializable isolation12949modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/persister/entity/AbstractEntityPersister.javaHHH-2503 : Throws JDBCExceptionHelper.convert() in AbstractEntityPersister.processGeneratedProperties()12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/OptionalJoinTest.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/persister/entity/AbstractEntityPersister.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/JoinSuite.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/Thing.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/AllTests.javaHHH-2320 : Update detached entity with null joined properties changed to non-null12945addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/join/Thing.hbm.xmlHHH-2320 : Update detached entity with null joined properties changed to non-null12941modified[EMAIL PROTECTED]//core/branches/Branch_3_2/src/org/hibernate/dialect/Oracle8iDialect.javaHHH-2788 : missing type mapping for DATE and TIME on Oracle8iDialect12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/Employee.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/src/org/hibernate/type/TypeFactory.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/ComponentTest.javaHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936modifiedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/User.hbm.xmlHHH-2542 : Merge non-null component in a child persisted with a null component and added test for optional components12936addedgbadner//core/branches/Branch_3_2/test/org/hibernate/test/component/basic/OptionalComponent.javaHHH-2542 : Merge non-null component in a child per

[hibernate-dev] Multiple-object batched inserts

2007-08-22 Thread Brett Wooldridge
I thought his question was a little too technical for the general list, so I
thought I¹d ask it here.  Is there a technical reason why Hibernate does not
or cannot support the batching of multiple (different) object insertions
within the same session?

I have code that is semantically equivalent to:

Session session = sessionFactory.getCurrentSession();
for (int i = 0; i < 1000; i++) {
   Foo foo = new Foo();
   session.save(foo);

   Bar bar = new Bar();
   session.save(bar);
}
session.flush();

If Foo or Bar is not in the equation, batching occurs as desired.  However,
if both Foo and Bar are inserted during the session in alternating fashion
the result is that in the ActionQueue the 'insertion list' is interleaved
with Foo's and Bar's.  This is natural enough it seems.  However, when
ActionQueue.executeActions() is called the following occurs...

1) executeAction() iterates through the insertion list calling execute() on
each Executable in the list
2) the Executable.execute() method calls insert() on the associated
persister, in the case a SingleTableEntityPersister.  It seems to realize
that it CAN batch these inserts and so ...
3) insert() calls the BatchingBatcher.prepareBatchStatement(sql) which is
actually a method on AbstractBatcher.  This is where things go "awry"...

The prepareBatchStatement(sql) does this thing where it compares the SQL
statement that was provided with the _last SQL that it executed_ and if they
match it re-uses the _last PreparedStatement_ which it also hung onto,
otherwise it closes the existing PreparedStatement and creates a new one --
effectively ending the current "batch".

In this case, because the objects are interleaved in the insertion list the
result is that the prepareBatchStatement() is called with:

insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
...

The result being that each subsequent statement terminates the statement
prepared before it, preventing batching from occuring.  Well, it logs a
debug message saying "Executing batch size: 1" for each statement.

So my question is this ... is there any reason not to use a Map construct in the BatchingBatcher such that the
appropriate PreparedStatement can be located and re-used based on the
incoming SQL rather than only retaining the _last_ SQL statement which is
guaranteed to "flap" in the case of alternating (or multiple) objects?

If there is no technical reason why this shouldn't be done or wouldn't work,
I will be happy to make the change and submit a patch.  [Can you tell how
bad I need batching in this scenario?]

Thanks,
Brett Wooldridge
The ZipTie Project
www.ziptie.org


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


Re: [hibernate-dev] Multiple-object batched inserts

2007-08-22 Thread Max Rydahl Andersen


http://opensource.atlassian.com/projects/hibernate/browse/HHH-1

/max


I thought his question was a little too technical for the general list, so I
thought I¹d ask it here.  Is there a technical reason why Hibernate does not
or cannot support the batching of multiple (different) object insertions
within the same session?

I have code that is semantically equivalent to:

Session session = sessionFactory.getCurrentSession();
for (int i = 0; i < 1000; i++) {
   Foo foo = new Foo();
   session.save(foo);

   Bar bar = new Bar();
   session.save(bar);
}
session.flush();

If Foo or Bar is not in the equation, batching occurs as desired.  However,
if both Foo and Bar are inserted during the session in alternating fashion
the result is that in the ActionQueue the 'insertion list' is interleaved
with Foo's and Bar's.  This is natural enough it seems.  However, when
ActionQueue.executeActions() is called the following occurs...

1) executeAction() iterates through the insertion list calling execute() on
each Executable in the list
2) the Executable.execute() method calls insert() on the associated
persister, in the case a SingleTableEntityPersister.  It seems to realize
that it CAN batch these inserts and so ...
3) insert() calls the BatchingBatcher.prepareBatchStatement(sql) which is
actually a method on AbstractBatcher.  This is where things go "awry"...

The prepareBatchStatement(sql) does this thing where it compares the SQL
statement that was provided with the _last SQL that it executed_ and if they
match it re-uses the _last PreparedStatement_ which it also hung onto,
otherwise it closes the existing PreparedStatement and creates a new one --
effectively ending the current "batch".

In this case, because the objects are interleaved in the insertion list the
result is that the prepareBatchStatement() is called with:

insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
insert into foo (a, b, c) values (?, ?, ?)
insert into bar (x, y, z) values (?, ?, ?)
...

The result being that each subsequent statement terminates the statement
prepared before it, preventing batching from occuring.  Well, it logs a
debug message saying "Executing batch size: 1" for each statement.

So my question is this ... is there any reason not to use a Map construct in the BatchingBatcher such that the
appropriate PreparedStatement can be located and re-used based on the
incoming SQL rather than only retaining the _last_ SQL statement which is
guaranteed to "flap" in the case of alternating (or multiple) objects?

If there is no technical reason why this shouldn't be done or wouldn't work,
I will be happy to make the change and submit a patch.  [Can you tell how
bad I need batching in this scenario?]

Thanks,
Brett Wooldridge
The ZipTie Project
www.ziptie.org


___
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