You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(32) |
Jun
(175) |
Jul
(209) |
Aug
(302) |
Sep
(287) |
Oct
(339) |
Nov
(314) |
Dec
(329) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(479) |
Feb
(389) |
Mar
(599) |
Apr
(307) |
May
(390) |
Jun
(300) |
Jul
(410) |
Aug
(458) |
Sep
(299) |
Oct
(315) |
Nov
(363) |
Dec
(529) |
2005 |
Jan
(568) |
Feb
(434) |
Mar
(1004) |
Apr
(823) |
May
(767) |
Jun
(763) |
Jul
(854) |
Aug
(862) |
Sep
(560) |
Oct
(853) |
Nov
(763) |
Dec
(731) |
2006 |
Jan
(776) |
Feb
(608) |
Mar
(657) |
Apr
(424) |
May
(559) |
Jun
(440) |
Jul
(448) |
Aug
(58) |
Sep
|
Oct
(17) |
Nov
(16) |
Dec
(8) |
2007 |
Jan
(1) |
Feb
(8) |
Mar
(2) |
Apr
(5) |
May
(3) |
Jun
(3) |
Jul
(3) |
Aug
(16) |
Sep
(10) |
Oct
(4) |
Nov
(4) |
Dec
(4) |
2008 |
Jan
(8) |
Feb
(1) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:50:12
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1902?page=comments#action_23694 ] Max Rydahl Andersen commented on HHH-1902: ------------------------------------------ test case ? (otherwise it will be closed) > Alias Problem... Hibernate is replacing our alias at one place but not at another place > --------------------------------------------------------------------------------------- > > Key: HHH-1902 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1902 > Project: Hibernate3 > Type: Bug > Components: query-hql > Versions: 3.0.3 > Environment: Hibernate 3.0.3 > Database Platform : MSSQL Server 2000 > Reporter: Paras Dhawan > > > I have a query which contains a sub query in the select list... I have defined an alias of the sub query as _sqry1 now I am putting an Order By clause in the query.... Order By is on the result of the sub query and I have given the alias of the sub query in the Order By clause > My Query is which i am giving to Hibernate is > SELECT (SELECT SUM(_0_ServiceCharge_0_service.chargeAmount) FROM Service AS _0_service , ServiceCharge AS _0_ServiceCharge_0_service WHERE _transportService_Challan = _0_service AND _0_service = _0_ServiceCharge_0_service.service) AS _sqry1 FROM Challan AS _Challan LEFT OUTER JOIN _Challan.transportService AS _transportService_Challan ORDER BY _sqry1 > Now the problem is that Hibernate is replacing my aliases.... it replaced my alias of the sub query from _sqry1 to col_0_0_ .... it replaced this alias in the select list but not in the Order By clause... i.e. it replaced the alias where I defined it but it did not replaced the alias where I used it.... so the place where I am using the alias it is giving an error as undefined alias > The generated SQL by Hibernate: > select (select SUM(servicecha3_.ChargeAmount) from Services service2_, ServiceCharges servicecha3_ where transports1_.TransportServiceId=service2_.ServiceId and service2_.ServiceId=servicecha3_.serviceGroupTablePKId) as col_0_0_ from Challans challan0_ left outer join TransportServices transports1_ on challan0_.TransportServiceId=transports1_.TransportServiceId left outer join Services transports1_1_ on transports1_.TransportServiceId=transports1_1_.ServiceId order by _sqry1 > when I manually replaced my alias in the Order By clause then my query run successfully > Either Hibernate should not replace my alias, even if it is replacing then it must replace all the occurences > I cannot use criteria, I cannot use named queries, i cannot use native sql because my queries are formed at run time, I have to specify a HQL only... This is bug in Hibernate > Hibernate version: 3.0.5 > Name and version of the database that I am using: > MS SQL Server 2000 > Full stack trace of any exception that occurs: > Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not execute query > at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67) > at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) > at org.hibernate.loader.Loader.doList(Loader.java:2148) > at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) > at org.hibernate.loader.Loader.list(Loader.java:2024) > at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375) > at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308) > at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153) > at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106) > at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79) > at com.daffodilwoods.framework.utils.HibernateUtil.main(HibernateUtil.java:296) > Caused by: java.sql.SQLException: [DataDirect][SQLServer JDBC Driver][SQLServer]Invalid column name '_sqry1'. > at com.ddtek.jdbc.base.BaseExceptions.createException(Unknown Source) > at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCNonCursorExecuteRequest.submitPrepare(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCExecuteRequest.doPrepExec(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCExecuteRequest.execute(Unknown Source) > at com.ddtek.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown Source) > at com.ddtek.jdbc.base.BaseStatement.commonExecute(Unknown Source) > at com.ddtek.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source) > at com.ddtek.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source) > at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139) > at org.hibernate.loader.Loader.getResultSet(Loader.java:1669) > at org.hibernate.loader.Loader.doQuery(Loader.java:662) > at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) > at org.hibernate.loader.Loader.doList(Loader.java:2145) > ... 8 more -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:48:12
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1902?page=all ] Max Rydahl Andersen updated HHH-1902: ------------------------------------- Priority: Major (was: Blocker) > Alias Problem... Hibernate is replacing our alias at one place but not at another place > --------------------------------------------------------------------------------------- > > Key: HHH-1902 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1902 > Project: Hibernate3 > Type: Bug > Components: query-hql > Versions: 3.0.3 > Environment: Hibernate 3.0.3 > Database Platform : MSSQL Server 2000 > Reporter: Paras Dhawan > > > I have a query which contains a sub query in the select list... I have defined an alias of the sub query as _sqry1 now I am putting an Order By clause in the query.... Order By is on the result of the sub query and I have given the alias of the sub query in the Order By clause > My Query is which i am giving to Hibernate is > SELECT (SELECT SUM(_0_ServiceCharge_0_service.chargeAmount) FROM Service AS _0_service , ServiceCharge AS _0_ServiceCharge_0_service WHERE _transportService_Challan = _0_service AND _0_service = _0_ServiceCharge_0_service.service) AS _sqry1 FROM Challan AS _Challan LEFT OUTER JOIN _Challan.transportService AS _transportService_Challan ORDER BY _sqry1 > Now the problem is that Hibernate is replacing my aliases.... it replaced my alias of the sub query from _sqry1 to col_0_0_ .... it replaced this alias in the select list but not in the Order By clause... i.e. it replaced the alias where I defined it but it did not replaced the alias where I used it.... so the place where I am using the alias it is giving an error as undefined alias > The generated SQL by Hibernate: > select (select SUM(servicecha3_.ChargeAmount) from Services service2_, ServiceCharges servicecha3_ where transports1_.TransportServiceId=service2_.ServiceId and service2_.ServiceId=servicecha3_.serviceGroupTablePKId) as col_0_0_ from Challans challan0_ left outer join TransportServices transports1_ on challan0_.TransportServiceId=transports1_.TransportServiceId left outer join Services transports1_1_ on transports1_.TransportServiceId=transports1_1_.ServiceId order by _sqry1 > when I manually replaced my alias in the Order By clause then my query run successfully > Either Hibernate should not replace my alias, even if it is replacing then it must replace all the occurences > I cannot use criteria, I cannot use named queries, i cannot use native sql because my queries are formed at run time, I have to specify a HQL only... This is bug in Hibernate > Hibernate version: 3.0.5 > Name and version of the database that I am using: > MS SQL Server 2000 > Full stack trace of any exception that occurs: > Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not execute query > at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67) > at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43) > at org.hibernate.loader.Loader.doList(Loader.java:2148) > at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2029) > at org.hibernate.loader.Loader.list(Loader.java:2024) > at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:375) > at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:308) > at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:153) > at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1106) > at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79) > at com.daffodilwoods.framework.utils.HibernateUtil.main(HibernateUtil.java:296) > Caused by: java.sql.SQLException: [DataDirect][SQLServer JDBC Driver][SQLServer]Invalid column name '_sqry1'. > at com.ddtek.jdbc.base.BaseExceptions.createException(Unknown Source) > at com.ddtek.jdbc.base.BaseExceptions.getException(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCRequest.processReplyToken(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCNonCursorExecuteRequest.submitPrepare(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCExecuteRequest.doPrepExec(Unknown Source) > at com.ddtek.jdbc.sqlserver.tds.TDSRPCExecuteRequest.execute(Unknown Source) > at com.ddtek.jdbc.sqlserver.SQLServerImplStatement.execute(Unknown Source) > at com.ddtek.jdbc.base.BaseStatement.commonExecute(Unknown Source) > at com.ddtek.jdbc.base.BaseStatement.executeQueryInternal(Unknown Source) > at com.ddtek.jdbc.base.BasePreparedStatement.executeQuery(Unknown Source) > at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:139) > at org.hibernate.loader.Loader.getResultSet(Loader.java:1669) > at org.hibernate.loader.Loader.doQuery(Loader.java:662) > at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224) > at org.hibernate.loader.Loader.doList(Loader.java:2145) > ... 8 more -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:46:13
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1355?page=all ] Max Rydahl Andersen updated HHH-1355: ------------------------------------- Fix Version: 3.2.0.ga just updating this to be marked in context of 3.2. Seen more than one posting about it previously/lately. > Post update event listener semantics changed from Hibernate 3.0 to 3.1 > ---------------------------------------------------------------------- > > Key: HHH-1355 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1355 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.1 > Reporter: Pekka Enberg > Priority: Blocker > Fix For: 3.2.0.ga > > > We are using Hibernate event model to implement transparent localization of POJOs. It is implemented as PreUpdateEventListener and PostUpdateEventListener so that a POJO is manipulated at PreUpdateEventListener before letting Hibernate to persist it and restored in PostUpdateEventListener. This works in Hibernate 3.0 but in 3.1 post update event semantics have changed so now we are unable to restore the state without Hibernate thinking the POJO is dirty. > This issue is related to the following forum topic: http://forum.hibernate.org/viewtopic.php?t=953934 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:44:13
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1406?page=all ] Max Rydahl Andersen closed HHH-1406: ------------------------------------ Resolution: Rejected no testcase, no link to previous discussion on forum? > SessionException Session is closed - This Bug problem is not according solution posting > ---------------------------------------------------------------------------------------- > > Key: HHH-1406 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1406 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.1.1 > Environment: Hibernate 3.1.1 - Mysql 4.x - Jvm 1.4.2_08 > Reporter: Juan Pablo Royo > Priority: Blocker > > > The solution to the problem i posted is not correct. Because if you look the code i posted, the method PersistenceManager.saveOrUpdate() call the method PersistenceManager.getSession(). > I use a custom ThreadLocalImpl that ovewrite the methods: > protected ConnectionReleaseMode getConnectionReleaseMode() { > return ConnectionReleaseMode.ON_CLOSE; > } > protected boolean isAutoCloseEnabled() { > return false; > } > It Is imposible that the session was closed if i didn't call the close() method in Session hibernate object. > In adition to this, i debuged the code in that moment and looked that the attribute named "closed" had state false. > Please check very carefully my code posted early and give me solution to the problem, because you're wrong about the solution. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:42:13
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1598?page=all ] Max Rydahl Andersen updated HHH-1598: ------------------------------------- Priority: Minor (was: Blocker) not a blocker > SchemaValidator fails when using boolean with HSQL > -------------------------------------------------- > > Key: HHH-1598 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1598 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.1.3 > Environment: HSQL 1.8.0.2 > Reporter: objective > Priority: Minor > Attachments: Cat.zip > > > chemaValidator fails when using boolean with HSQL > Table.validateColumns() fails with table with column type="boolean". The table is created automatically using hbm2ddl. > HSQL 1.8.0.2 > Exception in thread "main" org.hibernate.HibernateException: Wrong column type: abc, expected: bit > at org.hibernate.mapping.Table.validateColumns(Table.java:219) > at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:965) > at org.hibernate.tool.hbm2ddl.SchemaValidator.validate(SchemaValidator.java:116) > at HsqlHibernateBit.main(HsqlHibernateBit.java:10) > 20:26:31 [ main] INFO [Environment ] - Hibernate 3.1.3 > 20:26:31 [ main] INFO [Environment ] - hibernate.properties not found > 20:26:31 [ main] INFO [Environment ] - using CGLIB reflection optimizer > 20:26:31 [ main] INFO [Environment ] - using JDK 1.4 java.sql.Timestamp handling > 20:26:32 [ main] INFO [Configuration ] - configuring from resource: hibernate-HSQL.cfg.xml > 20:26:32 [ main] INFO [Configuration ] - Configuration resource: hibernate-HSQL.cfg.xml > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - trying to resolve system-id [http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd] > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - recognized hibernate namespace; attempting to resolve on classpath under org/hibernate/ > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - located [http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd] in classpath > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.connection.driver_class=org.hsqldb.jdbcDriver > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.connection.url=jdbc:hsqldb:mem:cat > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.connection.username=sa > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.connection.password= > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.connection.pool_size=1 > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.dialect=org.hibernate.dialect.HSQLDialect > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.show_sql=false > 20:26:32 [ main] DEBUG [Configuration ] - hibernate.hbm2ddl.auto=update > 20:26:32 [ main] INFO [Configuration ] - Configured SessionFactory: null > 20:26:32 [ main] INFO [Configuration ] - Reading mappings from resource: Cat.hbm.xml > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - trying to resolve system-id [http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd] > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - recognized hibernate namespace; attempting to resolve on classpath under org/hibernate/ > 20:26:32 [ main] DEBUG [DTDEntityResolver ] - located [http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd] in classpath > 20:26:32 [ main] INFO [HbmBinder ] - Mapping class: Cat -> Cat > 20:26:32 [ main] DEBUG [HbmBinder ] - Mapped property: abc -> abc > 20:26:32 [ main] DEBUG [Configuration ] - Preparing to build session factory with filters : {} > 20:26:32 [ main] DEBUG [Configuration ] - processing extends queue > 20:26:32 [ main] DEBUG [Configuration ] - processing collection mappings > 20:26:32 [ main] DEBUG [Configuration ] - processing native query and ResultSetMapping mappings > 20:26:32 [ main] DEBUG [Configuration ] - processing association property references > 20:26:32 [ main] DEBUG [Configuration ] - processing foreign key constraints > 20:26:32 [ main] INFO [riverManagerConnectionProvider] - Using Hibernate built-in connection pool (not for production use!) > 20:26:32 [ main] INFO [riverManagerConnectionProvider] - Hibernate connection pool size: 1 > 20:26:32 [ main] INFO [riverManagerConnectionProvider] - autocommit mode: false > 20:26:32 [ main] INFO [riverManagerConnectionProvider] - using driver: org.hsqldb.jdbcDriver at URL: jdbc:hsqldb:mem:cat > 20:26:32 [ main] INFO [riverManagerConnectionProvider] - connection properties: {user=sa, password=} > 20:26:32 [ main] DEBUG [riverManagerConnectionProvider] - total checked-out connections: 0 > 20:26:32 [ main] DEBUG [riverManagerConnectionProvider] - opening new JDBC connection > 20:26:33 [ main] DEBUG [riverManagerConnectionProvider] - created connection to: jdbc:hsqldb:mem:cat, Isolation Level: 0 > 20:26:33 [ main] INFO [SettingsFactory ] - RDBMS: HSQL Database Engine, version: 1.8.0 > 20:26:33 [ main] INFO [SettingsFactory ] - JDBC driver: HSQL Database Engine Driver, version: 1.8.0 > 20:26:33 [ main] DEBUG [riverManagerConnectionProvider] - returning connection to pool, pool size: 1 > 20:26:33 [ main] INFO [Dialect ] - Using dialect: org.hibernate.dialect.HSQLDialect > 20:26:33 [ main] INFO [TransactionFactoryFactory] - Using default transaction strategy (direct JDBC transactions) > 20:26:33 [ main] INFO [ransactionManagerLookupFactory] - No TransactionManagerLookup configured (in JTA environment, use of read-write or transactional second-level cache is not recommended) > 20:26:33 [ main] INFO [SettingsFactory ] - Automatic flush during beforeCompletion(): disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Automatic session close at end of transaction: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - JDBC batch size: 15 > 20:26:33 [ main] INFO [SettingsFactory ] - JDBC batch updates for versioned data: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Scrollable result sets: enabled > 20:26:33 [ main] DEBUG [SettingsFactory ] - Wrap result sets: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - JDBC3 getGeneratedKeys(): disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Connection release mode: auto > 20:26:33 [ main] INFO [SettingsFactory ] - Default batch fetch size: 1 > 20:26:33 [ main] INFO [SettingsFactory ] - Generate SQL with comments: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Order SQL updates by primary key: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory > 20:26:33 [ main] INFO [ASTQueryTranslatorFactory] - Using ASTQueryTranslatorFactory > 20:26:33 [ main] INFO [SettingsFactory ] - Query language substitutions: {} > 20:26:33 [ main] INFO [SettingsFactory ] - Second-level cache: enabled > 20:26:33 [ main] INFO [SettingsFactory ] - Query cache: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Cache provider: org.hibernate.cache.EhCacheProvider > 20:26:33 [ main] INFO [SettingsFactory ] - Optimize cache for minimal puts: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Structured second-level cache entries: disabled > 20:26:33 [ main] DEBUG [SQLExceptionConverterFactory] - Using dialect defined converter > 20:26:33 [ main] INFO [SettingsFactory ] - Statistics: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Deleted entity synthetic identifier rollback: disabled > 20:26:33 [ main] INFO [SettingsFactory ] - Default entity-mode: pojo > 20:26:33 [ main] INFO [SessionFactoryImpl ] - building session factory > 20:26:33 [ main] DEBUG [SessionFactoryImpl ] - Session factory constructed with filter configurations : {} > 20:26:33 [ main] DEBUG [SessionFactoryImpl ] - instantiating session factory with properties: > 20:26:33 [ main] DEBUG [CacheManager ] - Creating new CacheManager with default config > 20:26:33 [ main] DEBUG [CacheManager ] - Configuring ehcache from classpath. > 20:26:33 [ main] WARN [Configurator ] - No configuration found. Configuring ehcache from ehcache-failsafe.xml found in the classpath: jar:file:/C:/idea-workspace/replication/lib/ehcache-1.1.jar!/ehcache-failsafe.xml > 20:26:33 [ main] DEBUG [Configuration$DiskStore] - Disk Store Path: C:\DOCUME~1\obj\LOCALS~1\Temp\ > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Static SQL for entity: Cat > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Version select: select id from Cat where id =? > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Snapshot select: select cat_.id, cat_.abc as abc0_ from Cat cat_ where cat_.id=? > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Insert 0: insert into Cat (abc, id) values (?, ?) > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Update 0: update Cat set abc=? where id=? > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Delete 0: delete from Cat where id=? > 20:26:34 [ main] DEBUG [AbstractEntityPersister] - Identity insert: insert into Cat (abc, id) values (?, null) > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for action ACTION_MERGE on entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [EntityLoader ] - Static select for action ACTION_REFRESH on entity Cat: select cat0_.id as id0_0_, cat0_.abc as abc0_0_ from Cat cat0_ where cat0_.id=? > 20:26:34 [ main] DEBUG [SessionFactoryObjectFactory] - initializing class SessionFactoryObjectFactory > 20:26:34 [ main] DEBUG [SessionFactoryObjectFactory] - registered: 4028810f0a271205010a27120a650000 (unnamed) > 20:26:34 [ main] INFO [SessionFactoryObjectFactory] - Not binding factory to JNDI, no JNDI name configured > 20:26:34 [ main] DEBUG [SessionFactoryImpl ] - instantiated session factory > 20:26:34 [ main] INFO [SchemaUpdate ] - Running hbm2ddl schema update > 20:26:34 [ main] INFO [SchemaUpdate ] - fetching database metadata > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - total checked-out connections: 0 > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - using pooled JDBC connection, pool size: 0 > 20:26:34 [ main] INFO [SchemaUpdate ] - updating schema > 20:26:34 [ main] DEBUG [Configuration ] - processing extends queue > 20:26:34 [ main] DEBUG [Configuration ] - processing collection mappings > 20:26:34 [ main] DEBUG [Configuration ] - processing native query and ResultSetMapping mappings > 20:26:34 [ main] DEBUG [Configuration ] - processing association property references > 20:26:34 [ main] DEBUG [Configuration ] - processing foreign key constraints > 20:26:34 [ main] INFO [DatabaseMetadata ] - table not found: Cat > 20:26:34 [ main] INFO [DatabaseMetadata ] - table not found: Cat > 20:26:34 [ main] DEBUG [SchemaUpdate ] - create table Cat (id bigint generated by default as identity (start with 1), abc bit, primary key (id)) > 20:26:34 [ main] INFO [SchemaUpdate ] - schema update complete > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - returning connection to pool, pool size: 1 > 20:26:34 [ main] DEBUG [SessionFactoryImpl ] - Checking 0 named HQL queries > 20:26:34 [ main] DEBUG [SessionFactoryImpl ] - Checking 0 named SQL queries > 20:26:34 [ main] INFO [Dialect ] - Using dialect: org.hibernate.dialect.HSQLDialect > 20:26:34 [ main] INFO [SchemaValidator ] - Running schema validator > 20:26:34 [ main] INFO [SchemaValidator ] - fetching database metadata > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - Using Hibernate built-in connection pool (not for production use!) > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - Hibernate connection pool size: 1 > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - autocommit mode: false > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - using driver: org.hsqldb.jdbcDriver at URL: jdbc:hsqldb:mem:cat > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - connection properties: {user=sa, password=} > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - total checked-out connections: 0 > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - opening new JDBC connection > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - created connection to: jdbc:hsqldb:mem:cat, Isolation Level: 0 > 20:26:34 [ main] DEBUG [Configuration ] - processing extends queue > 20:26:34 [ main] DEBUG [Configuration ] - processing collection mappings > 20:26:34 [ main] DEBUG [Configuration ] - processing native query and ResultSetMapping mappings > 20:26:34 [ main] DEBUG [Configuration ] - processing association property references > 20:26:34 [ main] DEBUG [Configuration ] - processing foreign key constraints > 20:26:34 [ main] INFO [TableMetadata ] - table found: PUBLIC.CAT > 20:26:34 [ main] INFO [TableMetadata ] - columns: [abc, id] > 20:26:34 [ main] DEBUG [riverManagerConnectionProvider] - returning connection to pool, pool size: 1 > 20:26:34 [ main] INFO [riverManagerConnectionProvider] - cleaning up connection pool: jdbc:hsqldb:mem:cat > Exception in thread "main" org.hibernate.HibernateException: Wrong column type: abc, expected: bit > at org.hibernate.mapping.Table.validateColumns(Table.java:219) > at org.hibernate.cfg.Configuration.validateSchema(Configuration.java:965) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:42:12
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1790?page=all ] Max Rydahl Andersen closed HHH-1790: ------------------------------------ Fix Version: 3.2.0.cr3 Resolution: Duplicate > Deprecate FlushMode.NEVER and introduce FlushMode.APPLICATION > ------------------------------------------------------------- > > Key: HHH-1790 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1790 > Project: Hibernate3 > Type: Improvement > Reporter: Christian Bauer > Priority: Blocker > Fix For: 3.2.0.cr3 > > > As discussed on the list, to synchronize with the flush mode's for HEM and EJB 3.0 in general. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Max R. A. (JIRA) <no...@at...> - 2006-07-20 08:19:37
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293?page=comments#action_23690 ] Max Rydahl Andersen commented on HHH-1293: ------------------------------------------ juozas, we must support those classes. We can't start saying that hibernate requires pojo's with a default constructor AND you are not allowed to call certain basic methods. It makes perrfect sense to have your default constructor initialize your pojo to something sensible. > java.lang.NoSuchMethodError: <persistent class>.getHibernateLazyInitializer() > ----------------------------------------------------------------------------- > > Key: HHH-1293 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293 > Project: Hibernate3 > Type: Bug > Versions: 3.1.1 > Reporter: Andreas Schildbach > Assignee: Scott Marlow > Priority: Blocker > Fix For: 3.2.0.ga > Attachments: CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch3, CGLIBLazyInitializer.patch4, CGLIBProxyFactory.patch3, hibernate3.jar, manysessions.tgz > > > As documented in > http://forum.hibernate.org/viewtopic.php?t=940119 > some people (including me) are getting this exception with the final release of Hibernate 3.1: > java.lang.NoSuchMethodError: de.schildbach.game.integration.HibernateGamePlayer.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer; > at de.schildbach.game.integration.HibernateGamePlayer$$EnhancerByCGLIB$$afecb986.getHibernateLazyInitializer(<generated>) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.type.TypeFactory.assemble(TypeFactory.java:398) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:96) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:82) > at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:520) > at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474) > at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328) > at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123) > at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:202) > at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:169) > at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) > at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) > at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:838) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.collection.PersistentList.initializeFromCache(PersistentList.java:378) > at org.hibernate.cache.entry.CollectionCacheEntry.assemble(CollectionCacheEntry.java:35) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.initializeCollectionFromCache(DefaultInitializeCollectionEventListener.java:130) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:48) > at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1627) > at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344) > at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86) > at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:109) > at org.hibernate.collection.PersistentList.size(PersistentList.java:91) > The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Juozas B. (JIRA) <no...@at...> - 2006-07-20 06:54:24
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293?page=comments#action_23680 ] Juozas Baliuka commented on HHH-1293: ------------------------------------- I do not see problems in "invoke", but cglib and JavaAssist "invoke" implementation must be same with "InvocationHandler" callback. Review tests with proxy initialization in constructor, this stuff is complicated to support (and probably it is better not to support this kind of user objects). Example: class UnsupportedPOJO{ String name; void setName(String name){ this.name = name; } UnsupportedPOJO(){ setName("default"); } } > java.lang.NoSuchMethodError: <persistent class>.getHibernateLazyInitializer() > ----------------------------------------------------------------------------- > > Key: HHH-1293 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293 > Project: Hibernate3 > Type: Bug > Versions: 3.1.1 > Reporter: Andreas Schildbach > Assignee: Scott Marlow > Priority: Blocker > Fix For: 3.2.0.ga > Attachments: CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch3, CGLIBLazyInitializer.patch4, CGLIBProxyFactory.patch3, hibernate3.jar, manysessions.tgz > > > As documented in > http://forum.hibernate.org/viewtopic.php?t=940119 > some people (including me) are getting this exception with the final release of Hibernate 3.1: > java.lang.NoSuchMethodError: de.schildbach.game.integration.HibernateGamePlayer.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer; > at de.schildbach.game.integration.HibernateGamePlayer$$EnhancerByCGLIB$$afecb986.getHibernateLazyInitializer(<generated>) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.type.TypeFactory.assemble(TypeFactory.java:398) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:96) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:82) > at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:520) > at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474) > at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328) > at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123) > at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:202) > at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:169) > at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) > at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) > at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:838) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.collection.PersistentList.initializeFromCache(PersistentList.java:378) > at org.hibernate.cache.entry.CollectionCacheEntry.assemble(CollectionCacheEntry.java:35) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.initializeCollectionFromCache(DefaultInitializeCollectionEventListener.java:130) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:48) > at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1627) > at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344) > at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86) > at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:109) > at org.hibernate.collection.PersistentList.size(PersistentList.java:91) > The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Joe K. (JIRA) <no...@at...> - 2006-07-19 23:15:58
|
add mutable attribute to subclass and joined-subclass elements -------------------------------------------------------------- Key: HHH-1922 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1922 Project: Hibernate3 Type: New Feature Reporter: Joe Kelly Can you please add the "mutable" attribute to the "subclass" and "joined-subclass" elements? It is currently only supported for the "class" element. Sometimes I want some subclasses to be mutable and others to be immutable, in the same hierarchy. For example, this is what I would like to be able to do: ---------------------- <class name="AbstractAccount" table="account" discriminator-value="null"> <id name="entityId" column="account_id" unsaved-value="null"> <generator class="sequence"> <param name="sequence">account_seq</param> </generator> </id> <discriminator column="account_type" type="string"/> <property name="name" column="name"/> <subclass name="SystemDefinedAccount" discriminator-value="S" mutable="false"> </subclass> <subclass name="UserDefinedAccount" discriminator-value="U" mutable="true"> </subclass> </class> ---------------------- As you can see, SystemDefinedAccount is immutable whereas UserDefinedAccount is mutable. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 20:37:59
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921?page=comments#action_23673 ] Josh Moore commented on HHH-1921: --------------------------------- Index: DefaultFlushEntityEventListener.java =================================================================== --- DefaultFlushEntityEventListener.java (revision 10125) +++ DefaultFlushEntityEventListener.java (working copy) @@ -251,7 +251,7 @@ // if it was dirtied by a collection only int[] dirtyProperties = event.getDirtyProperties(); - if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { + if ( !substitute && event.isDirtyCheckPossible() && dirtyProperties==null ) { if ( !event.hasDirtyCollection() ) { throw new AssertionFailure("dirty, but no dirty properties"); } is working for me. Attached test passes. My code passes. The list of tests which fail from TRUNK is similar to that listed on HHH-1401 (http://opensource.atlassian.com/projects/hibernate/browse/HHH-1401#action_23666), i.e. it doesn't seem to have broken too much. [junit] TEST org.hibernate.test.cuk.CompositePropertyRefTest FAILED [junit] TEST org.hibernate.test.hql.ASTParserLoadingTest FAILED [junit] TEST org.hibernate.test.hql.CriteriaHQLAlignmentTest FAILED [junit] TEST org.hibernate.test.hql.HQLTest FAILED [junit] TEST org.hibernate.test.legacy.SQLLoaderTest FAILED [junit] TEST org.hibernate.test.optlock.OptimisticLockTest FAILED [junit] TEST org.hibernate.test.orphan.PropertyRefTest FAILED [junit] TEST org.hibernate.test.propertyref.PropertyRefTest FAILED [junit] TEST org.hibernate.test.readonly.ReadOnlyTest FAILED [junit] TEST org.hibernate.test.sql.GeneralTest FAILED (SQLLoaderTest was added but that is more likely due to the difference in versions: 10123 --> 10125) > "dirty, but no dirty properties" thrown when Interceptor resets properties. > --------------------------------------------------------------------------- > > Key: HHH-1921 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.2.0.cr2 > Environment: java version "1.5.0_07" > Hibernate 3.2.cr2 > Reporter: Josh Moore > Attachments: InterceptorTest.java, ResetInterceptor.java, dirtybutnotdirty.zip > > > When Interceptor.onfindDirty() resets properties to their DB value, the check in DefaultFlushEntityEventListener.scheduleUpdate: > // if it was dirtied by a collection only > int[] dirtyProperties = event.getDirtyProperties(); > if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { > if ( !event.hasDirtyCollection() ) { > throw new AssertionFailure("dirty, but no dirty properties"); > } > dirtyProperties = ArrayHelper.EMPTY_INT_ARRAY; > } > fails needlessly. > Attached test has been confirmed against SVN TRUNK: > URL: http://anonhibernate.labs.jboss.com/trunk/Hibernate3 > Revision: 10125 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 20:16:56
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921?page=all ] Josh Moore updated HHH-1921: ---------------------------- Attachment: ResetInterceptor.java > "dirty, but no dirty properties" thrown when Interceptor resets properties. > --------------------------------------------------------------------------- > > Key: HHH-1921 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.2.0.cr2 > Environment: java version "1.5.0_07" > Hibernate 3.2.cr2 > Reporter: Josh Moore > Attachments: InterceptorTest.java, ResetInterceptor.java, dirtybutnotdirty.zip > > > When Interceptor.onfindDirty() resets properties to their DB value, the check in DefaultFlushEntityEventListener.scheduleUpdate: > // if it was dirtied by a collection only > int[] dirtyProperties = event.getDirtyProperties(); > if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { > if ( !event.hasDirtyCollection() ) { > throw new AssertionFailure("dirty, but no dirty properties"); > } > dirtyProperties = ArrayHelper.EMPTY_INT_ARRAY; > } > fails needlessly. > Attached test has been confirmed against SVN TRUNK: > URL: http://anonhibernate.labs.jboss.com/trunk/Hibernate3 > Revision: 10125 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 20:16:56
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921?page=all ] Josh Moore updated HHH-1921: ---------------------------- Attachment: InterceptorTest.java > "dirty, but no dirty properties" thrown when Interceptor resets properties. > --------------------------------------------------------------------------- > > Key: HHH-1921 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.2.0.cr2 > Environment: java version "1.5.0_07" > Hibernate 3.2.cr2 > Reporter: Josh Moore > Attachments: InterceptorTest.java, ResetInterceptor.java, dirtybutnotdirty.zip > > > When Interceptor.onfindDirty() resets properties to their DB value, the check in DefaultFlushEntityEventListener.scheduleUpdate: > // if it was dirtied by a collection only > int[] dirtyProperties = event.getDirtyProperties(); > if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { > if ( !event.hasDirtyCollection() ) { > throw new AssertionFailure("dirty, but no dirty properties"); > } > dirtyProperties = ArrayHelper.EMPTY_INT_ARRAY; > } > fails needlessly. > Attached test has been confirmed against SVN TRUNK: > URL: http://anonhibernate.labs.jboss.com/trunk/Hibernate3 > Revision: 10125 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 20:14:59
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921?page=comments#action_23672 ] Josh Moore commented on HHH-1921: --------------------------------- Forgot to mention, test is copied all but verbatim from org.hibernate.test.interceptor. Standing on the shoulders of giants and what not. Will also attach changes to that package if it's easier. > "dirty, but no dirty properties" thrown when Interceptor resets properties. > --------------------------------------------------------------------------- > > Key: HHH-1921 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.2.0.cr2 > Environment: java version "1.5.0_07" > Hibernate 3.2.cr2 > Reporter: Josh Moore > Attachments: dirtybutnotdirty.zip > > > When Interceptor.onfindDirty() resets properties to their DB value, the check in DefaultFlushEntityEventListener.scheduleUpdate: > // if it was dirtied by a collection only > int[] dirtyProperties = event.getDirtyProperties(); > if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { > if ( !event.hasDirtyCollection() ) { > throw new AssertionFailure("dirty, but no dirty properties"); > } > dirtyProperties = ArrayHelper.EMPTY_INT_ARRAY; > } > fails needlessly. > Attached test has been confirmed against SVN TRUNK: > URL: http://anonhibernate.labs.jboss.com/trunk/Hibernate3 > Revision: 10125 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 20:05:57
|
"dirty, but no dirty properties" thrown when Interceptor resets properties. --------------------------------------------------------------------------- Key: HHH-1921 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1921 Project: Hibernate3 Type: Bug Components: core Versions: 3.2.0.cr2 Environment: java version "1.5.0_07" Hibernate 3.2.cr2 Reporter: Josh Moore Attachments: dirtybutnotdirty.zip When Interceptor.onfindDirty() resets properties to their DB value, the check in DefaultFlushEntityEventListener.scheduleUpdate: // if it was dirtied by a collection only int[] dirtyProperties = event.getDirtyProperties(); if ( event.isDirtyCheckPossible() && dirtyProperties==null ) { if ( !event.hasDirtyCollection() ) { throw new AssertionFailure("dirty, but no dirty properties"); } dirtyProperties = ArrayHelper.EMPTY_INT_ARRAY; } fails needlessly. Attached test has been confirmed against SVN TRUNK: URL: http://anonhibernate.labs.jboss.com/trunk/Hibernate3 Revision: 10125 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Scott M. (JIRA) <no...@at...> - 2006-07-19 19:28:24
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293?page=comments#action_23670 ] Scott Marlow commented on HHH-1293: ----------------------------------- I'm tweaking the invoke() method as we are failing a few different tests now. > java.lang.NoSuchMethodError: <persistent class>.getHibernateLazyInitializer() > ----------------------------------------------------------------------------- > > Key: HHH-1293 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293 > Project: Hibernate3 > Type: Bug > Versions: 3.1.1 > Reporter: Andreas Schildbach > Assignee: Scott Marlow > Priority: Blocker > Fix For: 3.2.0.ga > Attachments: CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch3, CGLIBLazyInitializer.patch4, CGLIBProxyFactory.patch3, hibernate3.jar, manysessions.tgz > > > As documented in > http://forum.hibernate.org/viewtopic.php?t=940119 > some people (including me) are getting this exception with the final release of Hibernate 3.1: > java.lang.NoSuchMethodError: de.schildbach.game.integration.HibernateGamePlayer.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer; > at de.schildbach.game.integration.HibernateGamePlayer$$EnhancerByCGLIB$$afecb986.getHibernateLazyInitializer(<generated>) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.type.TypeFactory.assemble(TypeFactory.java:398) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:96) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:82) > at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:520) > at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474) > at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328) > at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123) > at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:202) > at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:169) > at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) > at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) > at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:838) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.collection.PersistentList.initializeFromCache(PersistentList.java:378) > at org.hibernate.cache.entry.CollectionCacheEntry.assemble(CollectionCacheEntry.java:35) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.initializeCollectionFromCache(DefaultInitializeCollectionEventListener.java:130) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:48) > at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1627) > at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344) > at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86) > at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:109) > at org.hibernate.collection.PersistentList.size(PersistentList.java:91) > The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Adrian S. (JIRA) <no...@at...> - 2006-07-19 18:10:58
|
[ http://opensource.atlassian.com/projects/hibernate/browse/ANN-261?page=comments#action_23669 ] Adrian Sampaleanu commented on ANN-261: --------------------------------------- I've tried to add this patch to my local checkout of Hibernate and HibernateExt, but I don't seem to have the file org.hibernate.annotations.ForeignKey.java (there is a or.hibernate.mapping.ForeignKey.java though) that is referenced in the first patch. Did this file exist in 3.2 cr1? Has it been refactored since then? > Allow specifying foreign key constraint name using annotations > -------------------------------------------------------------- > > Key: ANN-261 > URL: http://opensource.atlassian.com/projects/hibernate/browse/ANN-261 > Project: Hibernate Annotations > Type: Improvement > Components: binder > Versions: 3.1beta8 > Reporter: Paul Barry > Priority: Minor > Attachments: hibernate-annotations-3.2.0.CR1-fk.patch, hibernate-annotations-fk.patch > > > Using hbm.xml configuration for many-to-one, there is a foreign-key property that allows you to specify the name of the FK constraint. It would be nice if there was something similar for annotations, such as @ManyToOne ( constraintName = "FK_WHATEVER"). Also, a sensible default would be nice to, for example FK_TABLE_NAME_COLUMN_NAME, rather than FK20708CF6792111. I know Oracle has a 30 char limit for constraint names, so there would have to me some logic to find a way to abbreviate it. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Scott M. (JIRA) <no...@at...> - 2006-07-19 16:18:26
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293?page=all ] Scott Marlow updated HHH-1293: ------------------------------ Attachment: CGLIBLazyInitializer.patch4 CGLIBLazyInitializer.patch4 is using the invocationHandler interface. Juozas, thank you for advising me on this change. I need to cache the generated factory classes still. Please review this new patch (especially "invoke(final Object proxy, final Method method, final Object[] args)"). > java.lang.NoSuchMethodError: <persistent class>.getHibernateLazyInitializer() > ----------------------------------------------------------------------------- > > Key: HHH-1293 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293 > Project: Hibernate3 > Type: Bug > Versions: 3.1.1 > Reporter: Andreas Schildbach > Assignee: Scott Marlow > Priority: Blocker > Fix For: 3.2.0.ga > Attachments: CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch3, CGLIBLazyInitializer.patch4, CGLIBProxyFactory.patch3, hibernate3.jar, manysessions.tgz > > > As documented in > http://forum.hibernate.org/viewtopic.php?t=940119 > some people (including me) are getting this exception with the final release of Hibernate 3.1: > java.lang.NoSuchMethodError: de.schildbach.game.integration.HibernateGamePlayer.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer; > at de.schildbach.game.integration.HibernateGamePlayer$$EnhancerByCGLIB$$afecb986.getHibernateLazyInitializer(<generated>) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.type.TypeFactory.assemble(TypeFactory.java:398) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:96) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:82) > at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:520) > at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474) > at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328) > at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123) > at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:202) > at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:169) > at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) > at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) > at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:838) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.collection.PersistentList.initializeFromCache(PersistentList.java:378) > at org.hibernate.cache.entry.CollectionCacheEntry.assemble(CollectionCacheEntry.java:35) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.initializeCollectionFromCache(DefaultInitializeCollectionEventListener.java:130) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:48) > at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1627) > at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344) > at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86) > at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:109) > at org.hibernate.collection.PersistentList.size(PersistentList.java:91) > The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Thomas W. (JIRA) <no...@at...> - 2006-07-19 15:26:59
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1296?page=comments#action_23667 ] Thomas Weber commented on HHH-1296: ----------------------------------- The same problem also occurs, if a List is fetched LAZY. This is a real show stopper. > Non lazy loaded List updates done in wrong order, cause exception > ----------------------------------------------------------------- > > Key: HHH-1296 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1296 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.0.5 > Environment: Hibernate 3.0.5 - any database (checked postgres 7/8, mysql 4 & 5, db2 v8) > NOT using lazy loading - the tx's are wrapped by session beans, so lazy loading is not allowed. > Reporter: David Birch > Priority: Critical > > > The logic behind list updates is not quite right, nor was it in v2 (only now i have a DBA who won't let up...) > The scenario is: > a bean with list property, and the list has a number of items in it (say 4, index 0-3), an item is then removed (say item at index 2), and the bean is requested to be saved. > From what i can see in the SQL traces, the same statements are issues whe lazy loading is on or off, they are: > [18/12/05 19:48:50:766 EST] 00000036 SystemOut O Hibernate: delete from TGE_CLIENT_POLICY where CLIENT_ID=? and POSITION=? > [18/12/05 19:48:50:766 EST] 00000036 SystemOut O Hibernate: update TGE_CLIENT_POLICY set POLICY_NK=? where CLIENT_ID=? and POSITION=? > So, i can only assume (as when this fails, the row with index 1 above the removed row is nuked!), hibernate removes the item at index 3, and then copies the value of the item at index 3 onto the row for item at index 2. Fair enough but... > When i have lazy loading off, i get DB exceptions like > Duplicate key or integrity constraint violation message from server: "Duplicate entry '1-999999' for key 1" > so, there is some nasty in there, which is not updating the correct row - this has happened since 2.1.8 that i know of :( > i will try & look @ the source, but won't get a chance until after xmas... -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Ignat Z. (JIRA) <no...@at...> - 2006-07-19 13:20:57
|
Incorrect documentation regarding XML manipulation in Hibernate reference manual (chapter 18.3). ------------------------------------------------------------------------------------------------ Key: HHH-1920 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1920 Project: Hibernate3 Type: Bug Versions: 3.1.3 Reporter: Ignat Zapolsky Priority: Trivial Manual has following sample (chapter 18.3): Session session = factory.openSession(); Session dom4jSession = session.getSession(EntityMode.DOM4J); Transaction tx = session.beginTransaction(); List results = dom4jSession .createQuery("from Customer c left join fetch c.accounts where c.lastName like :lastName") .list(); for ( int i=0; i<results.size(); i++ ) { //add the customer data to the XML document Element customer = (Element) results.get(i); doc.add(customer); } Mentioned code simply changes root node of doc, but supposed to add child elements. Correct code shall look like: Session session = factory.openSession(); Session dom4jSession = session.getSession(EntityMode.DOM4J); Transaction tx = session.beginTransaction(); List results = dom4jSession .createQuery("from Customer c left join fetch c.accounts where c.lastName like :lastName") .list(); for ( int i=0; i<results.size(); i++ ) { //add the customer data to the XML document Element customer = (Element) results.get(i); doc.getRootEelemnt().add(customer); } -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 13:06:59
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1401?page=all ] Josh Moore updated HHH-1401: ---------------------------- Attachment: TEST-org.hibernate.test.optlock.OptimisticLockTest.txt These tests failed as well: [junit] TEST org.hibernate.test.cuk.CompositePropertyRefTest FAILED [junit] TEST org.hibernate.test.hql.ASTParserLoadingTest FAILED [junit] TEST org.hibernate.test.hql.CriteriaHQLAlignmentTest FAILED [junit] TEST org.hibernate.test.hql.HQLTest FAILED [junit] TEST org.hibernate.test.optlock.OptimisticLockTest FAILED [junit] TEST org.hibernate.test.orphan.PropertyRefTest FAILED [junit] TEST org.hibernate.test.propertyref.PropertyRefTest FAILED [junit] TEST org.hibernate.test.readonly.ReadOnlyTest FAILED [junit] TEST org.hibernate.test.sql.GeneralTest FAILED OptimisticLock, naturally, seems to be significant. Attaching the test log here. > session.merge() executes unnecessary updates when one-to-many relationship is defined. > -------------------------------------------------------------------------------------- > > Key: HHH-1401 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1401 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.1.1 > Environment: Hibernate 3.1.1 > Postgres 8.03 > Java 1.4.2_09 > Reporter: David Trott > Attachments: HHH-1401.zip, Screenshot-Debug - AbstractPersistentCollection.class - Eclipse SDK .png, TEST-org.hibernate.test.optlock.OptimisticLockTest.txt > > > I am attempting to use the session.merge() functionality in order to synchronize the state of the data coming from the web tier with the database, however I am seeing unnecessary updates (when nothing has changed). > In order to track down the problem I created a test case with four tables and four classes (A,B,C and D) > Where: > A is the parent of B. > B is the parent of C. > C is the parent of D. > And there are no other relationships present. > All these relationships are bi-directional with the one-to-many side marked as inverse="true" and cascade="all-delete-orphan". > The merge() is working fine (the data gets updated correctly) except that when there is no change to the data hibernate still runs updates on A,B and C however not on D (D has no one-to-many relationships). > I am including the code and hibernate mapping for B as it is representative of the code for all the other classes. > I am no expect on the hibernate implementation, but my suspicion of the cause is when hibernate substitutes a PersistentBag for the ArrayList in the merged object (associated with the session) it detects this as a change and hence triggers the update, unfortunately the data itself has not changed hence no update is necessary. > FYI: If I change the initialization of the bags from "new ArrayList()" to "new PersistentBag()" the extra updates go away, however then it doesn't save real changes correctly. > package com.mycompany.dal.transfer.impl; > import org.apache.commons.lang.builder.EqualsBuilder; > import org.apache.commons.lang.builder.HashCodeBuilder; > import org.apache.commons.lang.builder.ToStringBuilder; > import java.util.ArrayList; > import java.util.Collections; > import java.util.List; > import com.mycompany.dal.transfer.interfaces.ADTO; > import com.mycompany.dal.transfer.interfaces.BDTO; > import com.mycompany.dal.transfer.interfaces.CDTO; > import org.apache.commons.collections.Closure; > import org.apache.commons.collections.CollectionUtils; > public class BDTOImpl implements BDTO { > public BDTOImpl () { > } > private Long bId; > > public Long getBId() { > return bId; > } > public void setBId(Long bId) { > this.bId = bId; > } > private Long concurrentVersion; > > public Long getConcurrentVersion() { > return concurrentVersion; > } > public void setConcurrentVersion(Long concurrentVersion) { > this.concurrentVersion = concurrentVersion; > } > // Package level protection so that overrides can access it. > boolean deleting = false; > private String name; > /** > * Returns the Name. > * > * @return String - The Name > */ > public String getName() { > return name; > } > /** > * Set the Name. > * > * @param name String - The Name. > */ > public void setName(String name) { > this.name = name; > } > private ADTO a; > /** > * Returns the A. > * > * @return ADTO - The A. > */ > public ADTO getA() { > return a; > } > > public ADTO getAInternal() { > return a; > } > /** > * Updates the A. > * > * @param a - ADTO The A. > */ > public void setA(ADTO a) { > if (this.a == a) { > return; > } > if (this.a != null) { > ((ADTOImpl) this.a).removeBInternal(this); > } > this.a = a; > if (a != null) { > ((ADTOImpl) a).addBInternal(this); > } > } > public void setAInternal(ADTO a) { > if (deleting) { > return; > } > if (this.a != a && > this.a != null && a != null) { > throw new IllegalStateException("BDTO cannot be a member of two A collections: " + toString()); > } > this.a = a; > } > private List cs; > private List csMutable; > { setCsMutable(new ArrayList()); } > public List getCsMutable() { > return csMutable; > } > public void setCsMutable(List cs) { > this.cs = Collections.unmodifiableList(cs); > this.csMutable = cs; > } > public List getCs() { > return cs; > } > > public void addC(CDTO c) { > csMutable.add(c); > ((CDTOImpl) c).setBInternal(this); > } > public void addCInternal(CDTO c) { > csMutable.add(c); > } > > public void removeC(CDTO c) { > csMutable.remove(c); > ((CDTOImpl) c).setBInternal(null); > } > public void removeCInternal(CDTO c) { > if (!deleting) { > csMutable.remove(c); > } > } > public void beforeDelete() { > // Guard to prevent infinite loop. > if (deleting) { > return; > } > > deleting = true; > if (this.a != null) { > ((ADTOImpl) this.a).removeBInternal(this); > } > CollectionUtils.forAllDo(new ArrayList(csMutable), new Closure() { > public void execute(Object ob) { > ((CDTOImpl) ob).beforeDelete(); > } > }); > } > public int hashCode() { > return (new HashCodeBuilder(17,37) > .append(getBId()) > ).toHashCode(); > } > public boolean equals(Object o) { > boolean equals = false; > if (o != null && o instanceof BDTO) { > BDTO other = (BDTO) o; > return (new EqualsBuilder() > .append(getBId(), other.getBId()) > ).isEquals(); > } > return equals; > } > > public String toString() { > return new ToStringBuilder(this) > .append("bId", getBId()) > .append("name", getName()) > .toString(); > } > } > ****************************** > *** Mapping Document **** > ****************************** > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" > "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> > <hibernate-mapping package="com.mycompany.dal.transfer.impl" auto-import="true"> > <class name="com.mycompany.dal.transfer.impl.BDTOImpl" table="b"> > <id name="BId" type="long"> > <column name="b_id" not-null="true"/> > <generator class="native"/> > </id> > <version name="concurrentVersion" column="concurrent_version" type="long"/> > <property name="Name" type="string"> > <column name="name" length="60" not-null="false"/> > </property> > <many-to-one name="AInternal" class="com.mycompany.dal.transfer.impl.ADTOImpl"> > <column name="a_id" not-null="true"/> > </many-to-one> > <bag name="CsMutable" cascade="all-delete-orphan" inverse="true"> > <key> > <column name="b_id" not-null="true"/> > </key> > <one-to-many class="com.mycompany.dal.transfer.impl.CDTOImpl"/> > </bag> > </class> > </hibernate-mapping> > ************************* > *** Generated SQL **** > ************************* > 05:35:39,887 INFO [STDOUT] Hibernate: select adtoimpl0_.a_id as a1_162_2_, adtoimpl0_.concurrent_version as concurrent2_162_2_, adtoimpl0_.name as name162_2_, bsmutable1_.a_id as a4_4_, bsmutable1_.b_id as b1_4_, bsmutable1_.b_id as b1_164_0_, bsmutable1_.concurrent_version as concurrent2_164_0_, bsmutable1_.name as name164_0_, bsmutable1_.a_id as a4_164_0_, csmutable2_.b_id as b4_5_, csmutable2_.c_id as c1_5_, csmutable2_.c_id as c1_165_1_, csmutable2_.concurrent_version as concurrent2_165_1_, csmutable2_.name as name165_1_, csmutable2_.b_id as b4_165_1_ from a adtoimpl0_ left outer join b bsmutable1_ on adtoimpl0_.a_id=bsmutable1_.a_id left outer join c csmutable2_ on bsmutable1_.b_id=csmutable2_.b_id where adtoimpl0_.a_id=? > 05:35:39,992 INFO [STDOUT] Hibernate: select ddtoimpl0_.d_id as d1_168_0_, ddtoimpl0_.concurrent_version as concurrent2_168_0_, ddtoimpl0_.name as name168_0_, ddtoimpl0_.c_id as c4_168_0_ from d ddtoimpl0_ where ddtoimpl0_.d_id=? > 05:35:40,007 INFO [STDOUT] Hibernate: select dsmutable0_.c_id as c4_1_, dsmutable0_.d_id as d1_1_, dsmutable0_.d_id as d1_168_0_, dsmutable0_.concurrent_version as concurrent2_168_0_, dsmutable0_.name as name168_0_, dsmutable0_.c_id as c4_168_0_ from d dsmutable0_ where dsmutable0_.c_id=? > *** Start Extra Updates ** > 05:35:40,030 INFO [STDOUT] Hibernate: update b set concurrent_version=?, name=?, a_id=? where b_id=? and concurrent_version=? > 05:35:40,038 INFO [STDOUT] Hibernate: update c set concurrent_version=?, name=?, b_id=? where c_id=? and concurrent_version=? > 05:35:40,044 INFO [STDOUT] Hibernate: update a set concurrent_version=?, name=? where a_id=? and concurrent_version=? > *** End Extra Updates ** > ************************** > *** Accessing code **** > ************************** > DataAccessLayer dal = DataAccessLayerBuilder.getInstance(); > > ADAO aDAO = dal.getADAO(); > BDAO bDAO = dal.getBDAO(); > CDAO cDAO = dal.getCDAO(); > DDAO dDAO = dal.getDDAO(); > > ADTO a = aDAO.newA(); > a.setAId(new Long(1)); > a.setConcurrentVersion(new Long(0)); > a.setName("A"); > > BDTO b = bDAO.newB(); > CDTO c = cDAO.newC(); > DDTO d = dDAO.newD(); > b.setBId(new Long(2)); > c.setCId(new Long(3)); > d.setDId(new Long(4)); > b.setConcurrentVersion(new Long(0)); > c.setConcurrentVersion(new Long(0)); > d.setConcurrentVersion(new Long(0)); > b.setName("B"); > c.setName("C"); > d.setName("D"); > b.setA(a); > c.setB(b); > d.setC(c); > > aDAO.mergeA(a); -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Josh M. (JIRA) <no...@at...> - 2006-07-19 12:59:00
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1401?page=comments#action_23665 ] Josh Moore commented on HHH-1401: --------------------------------- Confirmed test failure for: Revision: 10123 (~3.2.cr2) HQL dialect. > session.merge() executes unnecessary updates when one-to-many relationship is defined. > -------------------------------------------------------------------------------------- > > Key: HHH-1401 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1401 > Project: Hibernate3 > Type: Bug > Components: core > Versions: 3.1.1 > Environment: Hibernate 3.1.1 > Postgres 8.03 > Java 1.4.2_09 > Reporter: David Trott > Attachments: HHH-1401.zip, Screenshot-Debug - AbstractPersistentCollection.class - Eclipse SDK .png > > > I am attempting to use the session.merge() functionality in order to synchronize the state of the data coming from the web tier with the database, however I am seeing unnecessary updates (when nothing has changed). > In order to track down the problem I created a test case with four tables and four classes (A,B,C and D) > Where: > A is the parent of B. > B is the parent of C. > C is the parent of D. > And there are no other relationships present. > All these relationships are bi-directional with the one-to-many side marked as inverse="true" and cascade="all-delete-orphan". > The merge() is working fine (the data gets updated correctly) except that when there is no change to the data hibernate still runs updates on A,B and C however not on D (D has no one-to-many relationships). > I am including the code and hibernate mapping for B as it is representative of the code for all the other classes. > I am no expect on the hibernate implementation, but my suspicion of the cause is when hibernate substitutes a PersistentBag for the ArrayList in the merged object (associated with the session) it detects this as a change and hence triggers the update, unfortunately the data itself has not changed hence no update is necessary. > FYI: If I change the initialization of the bags from "new ArrayList()" to "new PersistentBag()" the extra updates go away, however then it doesn't save real changes correctly. > package com.mycompany.dal.transfer.impl; > import org.apache.commons.lang.builder.EqualsBuilder; > import org.apache.commons.lang.builder.HashCodeBuilder; > import org.apache.commons.lang.builder.ToStringBuilder; > import java.util.ArrayList; > import java.util.Collections; > import java.util.List; > import com.mycompany.dal.transfer.interfaces.ADTO; > import com.mycompany.dal.transfer.interfaces.BDTO; > import com.mycompany.dal.transfer.interfaces.CDTO; > import org.apache.commons.collections.Closure; > import org.apache.commons.collections.CollectionUtils; > public class BDTOImpl implements BDTO { > public BDTOImpl () { > } > private Long bId; > > public Long getBId() { > return bId; > } > public void setBId(Long bId) { > this.bId = bId; > } > private Long concurrentVersion; > > public Long getConcurrentVersion() { > return concurrentVersion; > } > public void setConcurrentVersion(Long concurrentVersion) { > this.concurrentVersion = concurrentVersion; > } > // Package level protection so that overrides can access it. > boolean deleting = false; > private String name; > /** > * Returns the Name. > * > * @return String - The Name > */ > public String getName() { > return name; > } > /** > * Set the Name. > * > * @param name String - The Name. > */ > public void setName(String name) { > this.name = name; > } > private ADTO a; > /** > * Returns the A. > * > * @return ADTO - The A. > */ > public ADTO getA() { > return a; > } > > public ADTO getAInternal() { > return a; > } > /** > * Updates the A. > * > * @param a - ADTO The A. > */ > public void setA(ADTO a) { > if (this.a == a) { > return; > } > if (this.a != null) { > ((ADTOImpl) this.a).removeBInternal(this); > } > this.a = a; > if (a != null) { > ((ADTOImpl) a).addBInternal(this); > } > } > public void setAInternal(ADTO a) { > if (deleting) { > return; > } > if (this.a != a && > this.a != null && a != null) { > throw new IllegalStateException("BDTO cannot be a member of two A collections: " + toString()); > } > this.a = a; > } > private List cs; > private List csMutable; > { setCsMutable(new ArrayList()); } > public List getCsMutable() { > return csMutable; > } > public void setCsMutable(List cs) { > this.cs = Collections.unmodifiableList(cs); > this.csMutable = cs; > } > public List getCs() { > return cs; > } > > public void addC(CDTO c) { > csMutable.add(c); > ((CDTOImpl) c).setBInternal(this); > } > public void addCInternal(CDTO c) { > csMutable.add(c); > } > > public void removeC(CDTO c) { > csMutable.remove(c); > ((CDTOImpl) c).setBInternal(null); > } > public void removeCInternal(CDTO c) { > if (!deleting) { > csMutable.remove(c); > } > } > public void beforeDelete() { > // Guard to prevent infinite loop. > if (deleting) { > return; > } > > deleting = true; > if (this.a != null) { > ((ADTOImpl) this.a).removeBInternal(this); > } > CollectionUtils.forAllDo(new ArrayList(csMutable), new Closure() { > public void execute(Object ob) { > ((CDTOImpl) ob).beforeDelete(); > } > }); > } > public int hashCode() { > return (new HashCodeBuilder(17,37) > .append(getBId()) > ).toHashCode(); > } > public boolean equals(Object o) { > boolean equals = false; > if (o != null && o instanceof BDTO) { > BDTO other = (BDTO) o; > return (new EqualsBuilder() > .append(getBId(), other.getBId()) > ).isEquals(); > } > return equals; > } > > public String toString() { > return new ToStringBuilder(this) > .append("bId", getBId()) > .append("name", getName()) > .toString(); > } > } > ****************************** > *** Mapping Document **** > ****************************** > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" > "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> > <hibernate-mapping package="com.mycompany.dal.transfer.impl" auto-import="true"> > <class name="com.mycompany.dal.transfer.impl.BDTOImpl" table="b"> > <id name="BId" type="long"> > <column name="b_id" not-null="true"/> > <generator class="native"/> > </id> > <version name="concurrentVersion" column="concurrent_version" type="long"/> > <property name="Name" type="string"> > <column name="name" length="60" not-null="false"/> > </property> > <many-to-one name="AInternal" class="com.mycompany.dal.transfer.impl.ADTOImpl"> > <column name="a_id" not-null="true"/> > </many-to-one> > <bag name="CsMutable" cascade="all-delete-orphan" inverse="true"> > <key> > <column name="b_id" not-null="true"/> > </key> > <one-to-many class="com.mycompany.dal.transfer.impl.CDTOImpl"/> > </bag> > </class> > </hibernate-mapping> > ************************* > *** Generated SQL **** > ************************* > 05:35:39,887 INFO [STDOUT] Hibernate: select adtoimpl0_.a_id as a1_162_2_, adtoimpl0_.concurrent_version as concurrent2_162_2_, adtoimpl0_.name as name162_2_, bsmutable1_.a_id as a4_4_, bsmutable1_.b_id as b1_4_, bsmutable1_.b_id as b1_164_0_, bsmutable1_.concurrent_version as concurrent2_164_0_, bsmutable1_.name as name164_0_, bsmutable1_.a_id as a4_164_0_, csmutable2_.b_id as b4_5_, csmutable2_.c_id as c1_5_, csmutable2_.c_id as c1_165_1_, csmutable2_.concurrent_version as concurrent2_165_1_, csmutable2_.name as name165_1_, csmutable2_.b_id as b4_165_1_ from a adtoimpl0_ left outer join b bsmutable1_ on adtoimpl0_.a_id=bsmutable1_.a_id left outer join c csmutable2_ on bsmutable1_.b_id=csmutable2_.b_id where adtoimpl0_.a_id=? > 05:35:39,992 INFO [STDOUT] Hibernate: select ddtoimpl0_.d_id as d1_168_0_, ddtoimpl0_.concurrent_version as concurrent2_168_0_, ddtoimpl0_.name as name168_0_, ddtoimpl0_.c_id as c4_168_0_ from d ddtoimpl0_ where ddtoimpl0_.d_id=? > 05:35:40,007 INFO [STDOUT] Hibernate: select dsmutable0_.c_id as c4_1_, dsmutable0_.d_id as d1_1_, dsmutable0_.d_id as d1_168_0_, dsmutable0_.concurrent_version as concurrent2_168_0_, dsmutable0_.name as name168_0_, dsmutable0_.c_id as c4_168_0_ from d dsmutable0_ where dsmutable0_.c_id=? > *** Start Extra Updates ** > 05:35:40,030 INFO [STDOUT] Hibernate: update b set concurrent_version=?, name=?, a_id=? where b_id=? and concurrent_version=? > 05:35:40,038 INFO [STDOUT] Hibernate: update c set concurrent_version=?, name=?, b_id=? where c_id=? and concurrent_version=? > 05:35:40,044 INFO [STDOUT] Hibernate: update a set concurrent_version=?, name=? where a_id=? and concurrent_version=? > *** End Extra Updates ** > ************************** > *** Accessing code **** > ************************** > DataAccessLayer dal = DataAccessLayerBuilder.getInstance(); > > ADAO aDAO = dal.getADAO(); > BDAO bDAO = dal.getBDAO(); > CDAO cDAO = dal.getCDAO(); > DDAO dDAO = dal.getDDAO(); > > ADTO a = aDAO.newA(); > a.setAId(new Long(1)); > a.setConcurrentVersion(new Long(0)); > a.setName("A"); > > BDTO b = bDAO.newB(); > CDTO c = cDAO.newC(); > DDTO d = dDAO.newD(); > b.setBId(new Long(2)); > c.setCId(new Long(3)); > d.setDId(new Long(4)); > b.setConcurrentVersion(new Long(0)); > c.setConcurrentVersion(new Long(0)); > d.setConcurrentVersion(new Long(0)); > b.setName("B"); > c.setName("C"); > d.setName("D"); > b.setA(a); > c.setB(b); > d.setC(c); > > aDAO.mergeA(a); -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Juozas B. (JIRA) <no...@at...> - 2006-07-19 06:47:23
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293?page=comments#action_23662 ] Juozas Baliuka commented on HHH-1293: ------------------------------------- You do not need Proxy to use InvocationHandler callback, just use Enhacer directly with this callback. Proxy is implemented this way itself: public static Class getProxyClass(ClassLoader loader, Class[] interfaces) { Enhancer e = new Enhancer(); e.setSuperclass(ProxyImpl.class); e.setInterfaces(interfaces); e.setCallbackTypes(new Class[]{ InvocationHandler.class, NoOp.class, }); e.setCallbackFilter(BAD_OBJECT_METHOD_FILTER); e.setUseFactory(false); return e.createClass(); } Enhancer will select different code generator for this callback, it generates "small" <clinit> (without MethodProxy and FactClass stuff) and it will be possible to create proxy instance using factory (As I understand, factory helps to avoid this issue). This change must help to save permanent memory too. > java.lang.NoSuchMethodError: <persistent class>.getHibernateLazyInitializer() > ----------------------------------------------------------------------------- > > Key: HHH-1293 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1293 > Project: Hibernate3 > Type: Bug > Versions: 3.1.1 > Reporter: Andreas Schildbach > Assignee: Scott Marlow > Priority: Blocker > Fix For: 3.2.0.ga > Attachments: CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch, CGLIBLazyInitializer.patch3, CGLIBProxyFactory.patch3, hibernate3.jar, manysessions.tgz > > > As documented in > http://forum.hibernate.org/viewtopic.php?t=940119 > some people (including me) are getting this exception with the final release of Hibernate 3.1: > java.lang.NoSuchMethodError: de.schildbach.game.integration.HibernateGamePlayer.getHibernateLazyInitializer()Lorg/hibernate/proxy/LazyInitializer; > at de.schildbach.game.integration.HibernateGamePlayer$$EnhancerByCGLIB$$afecb986.getHibernateLazyInitializer(<generated>) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:274) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.type.TypeFactory.assemble(TypeFactory.java:398) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:96) > at org.hibernate.cache.entry.CacheEntry.assemble(CacheEntry.java:82) > at org.hibernate.event.def.DefaultLoadEventListener.assembleCacheEntry(DefaultLoadEventListener.java:520) > at org.hibernate.event.def.DefaultLoadEventListener.loadFromSecondLevelCache(DefaultLoadEventListener.java:474) > at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:328) > at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:123) > at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:202) > at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:169) > at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:87) > at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:869) > at org.hibernate.impl.SessionImpl.internalLoad(SessionImpl.java:838) > at org.hibernate.type.EntityType.resolveIdentifier(EntityType.java:266) > at org.hibernate.type.ManyToOneType.assemble(ManyToOneType.java:177) > at org.hibernate.collection.PersistentList.initializeFromCache(PersistentList.java:378) > at org.hibernate.cache.entry.CollectionCacheEntry.assemble(CollectionCacheEntry.java:35) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.initializeCollectionFromCache(DefaultInitializeCollectionEventListener.java:130) > at org.hibernate.event.def.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:48) > at org.hibernate.impl.SessionImpl.initializeCollection(SessionImpl.java:1627) > at org.hibernate.collection.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:344) > at org.hibernate.collection.AbstractPersistentCollection.read(AbstractPersistentCollection.java:86) > at org.hibernate.collection.AbstractPersistentCollection.readSize(AbstractPersistentCollection.java:109) > at org.hibernate.collection.PersistentList.size(PersistentList.java:91) > The exception varies with the actual persistent class in use. Most people seem to be using JDK 1.5 and Linux. Some reports say that the exception does not happen from the very start of the application, but it takes "several invocations"/"some time" until it appear, but then it appears very often. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Leonardo Q. (JIRA) <no...@at...> - 2006-07-19 02:58:58
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1627?page=comments#action_23661 ] Leonardo Quijano commented on HHH-1627: --------------------------------------- Then why Session is Serializable? This breaks use of proxied objects in a clustered web session. Note that I'm not saying it should initialize the proxy. Just recovering the proxy to its previous pre-serialization state. > Serialize unitialized proxies session > ------------------------------------- > > Key: HHH-1627 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1627 > Project: Hibernate3 > Type: Bug > Components: core > Reporter: Leonardo Quijano > > > As in HHH-1443, but I disagree with the fix. Shouldn't Hibernate serialize the proxy's session, without initializing it? -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Steve E. (JIRA) <no...@at...> - 2006-07-19 02:13:56
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1756?page=all ] Steve Ebersole updated HHH-1756: -------------------------------- Component: core Fix Version: 3.2.1 Assign To: Steve Ebersole > Proxy objects are not removed from the BatchFetchQueue during a session evict > ----------------------------------------------------------------------------- > > Key: HHH-1756 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1756 > Project: Hibernate3 > Type: Bug > Components: core > Environment: Windows, Sybase, Hibernate Annotations > Reporter: Vadim Pertsovskiy > Assignee: Steve Ebersole > Fix For: 3.2.1 > > > When an entity loads, it initializes its children proxies and adds them to the BatchFetchQueue. The next time any of the proxies classes are loaded, hibernate retrieves additional objects rather then just the requested one. This works great, except if the user wants to evict the proxy from the BatchFetchQueue. Hibernate, incorrectly, does not do it. Once a proxy is added to the BatchFetchQueue, it's never removed unless the object is loaded. > To fix the problem, we've altered the SessionImpl class. During a proxy remove, the proxy is also removed from the BatchFetchQueue. > public Object removeProxy(EntityKey key) { > getBatchFetchQueue().removeBatchLoadableEntityKey(key); > getBatchFetchQueue().removeSubselect(key); > return proxiesByKey.remove(key); > } -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Steve E. (JIRA) <no...@at...> - 2006-07-19 02:09:58
|
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1627?page=all ] Steve Ebersole closed HHH-1627: ------------------------------- Resolution: Rejected No it shouldnt. > Serialize unitialized proxies session > ------------------------------------- > > Key: HHH-1627 > URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1627 > Project: Hibernate3 > Type: Bug > Components: core > Reporter: Leonardo Quijano > > > As in HHH-1443, but I disagree with the fix. Shouldn't Hibernate serialize the proxy's session, without initializing it? -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |