[Hibernate-JIRA] Created: (HSEARCH-460) LazyInitializationException while removing entity with @ContainedIn annotation
by Maciej Szulik (JIRA)
LazyInitializationException while removing entity with @ContainedIn annotation
------------------------------------------------------------------------------
Key: HSEARCH-460
URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-460
Project: Hibernate Search
Issue Type: Bug
Components: engine
Affects Versions: 3.1.1.GA
Reporter: Maciej Szulik
Priority: Blocker
Attachments: hibsearch.zip, Lazy.stack
I attach a Jboss Seam 2.2.0.GA project (without lib directory - one should take it entirely from seam default application generated using seam gen), as a complete illustration of the problem.
The Problem itself:
I have 2 entities:
Color (Long id, String name, Set<Vehicle> vehicles)
and Vehicle (Long id, String name, Color color).
Vehicle is indexed entity (@Indexed), while color has @ContainedIn on Set<Vehicle>.
Problem arises while managing color objects, strictly speaking while removing colors, LazyInitalizationException is thrown (stack trace is in attachment).
Every other operation on color entity (inserting, updating) works like a charm.
In attached example I created with a simple page for managing colors. It presents a list of already defined color objects in DB. If non present, you should generate some with 'Add random color'. To obtain above error click on 'Remove' link next to one of the colors presented on list.
--
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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months
[Hibernate-JIRA] Created: (HSEARCH-385) Lazy ManyToOne association with @containedIn annotation cause HSearch create entity index with documentId = 0
by Grégoire Rolland (JIRA)
Lazy ManyToOne association with @containedIn annotation cause HSearch create entity index with documentId = 0
-------------------------------------------------------------------------------------------------------------
Key: HSEARCH-385
URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-385
Project: Hibernate Search
Issue Type: Bug
Affects Versions: 3.1.1.GA, 3.1.0.GA
Environment: Hibernate 3.3.1.GA, Postgresql 8.3
Reporter: Grégoire Rolland
Priority: Critical
Attachments: hsearch.tar.gz
In a transaction, create Entity1 associated to one Entity2 (E1->E2 lazy oneToMany, E2->E1 lazy manyToOne).
In antoher transaction, find Entity2, modify Entity2.
On commit, I get this log :
2009-07-02 11:42:18,791 TRACE [org.hibernate.search.backend.impl.lucene.works.DeleteExtWorkDelegate] - Removing class org.foo.hibernate.search.jira.Entity1#0 by id using an IndexWriter.
2009-07-02 11:42:18,792 TRACE [org.hibernate.search.backend.impl.lucene.works.AddWorkDelegate] - add to Lucene index: class org.foo.hibernate.search.jira.Entity1#0:Document<stored/uncompressed,indexed<_hibernate_class:org.foo.hibernate.search.jira.Entity1> stored/uncompressed,indexed<uid:0> stored/uncompressed,indexed<entities2.uid:224136060>>
in the index :
1 document for Entity, with the correct Id, and 1 document with Id = 0, index is corrupted.
See the test case for more info.
--
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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months
[Hibernate-JIRA] Created: (HHH-4784) JDBCTransaction -> commit() -> notifyLocalSynchsBeforeTransactionCompletion()
by Silvan Eugen Lincan (JIRA)
JDBCTransaction -> commit() -> notifyLocalSynchsBeforeTransactionCompletion()
-----------------------------------------------------------------------------
Key: HHH-4784
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-4784
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.5.0-Beta-2
Environment: hibernate-distribution-3.5.0-Beta-2
ms-sqlserver 2008
Reporter: Silvan Eugen Lincan
Java class: org.hibernate.transaction.JDBCTransaction
method: commit()
line: 140 call to notifyLocalSynchsBeforeTransactionCompletion()
The problem is this: method notifyLocalSynchsBeforeTransactionCompletion(), it swallows any exception that may occur at this level and permits the execution flow of commit() method to continue.
But in this case, the hibernate session may be already corrupted, so the commit will be wrong.
In my opinion, the method notifyLocalSynchsBeforeTransactionCompletion() should throw the exception, and on line 140 in commit() method, the call to this notifyLocalSynchsBeforeTransactionCompletion() should be surrounded also in the try{}catch(){}.
Otherwise, any error that can occur on Synchronization, will be omitted and the transaction committed(it should be rolled back).
I had this problem, executing the tests from envers module with the ms sqlserver 2008 database.
The test org.hibernate.envers.test.integration.reventity.ExceptionListener crashes.
I hope that it deserves your attention.
Thank you very much.
--
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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months
[Hibernate-JIRA] Created: (HHH-3449) Unable to use Oracle stored procedure in a <sql-query>
by RC (JIRA)
Unable to use Oracle stored procedure in a <sql-query>
------------------------------------------------------
Key: HHH-3449
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3449
Project: Hibernate3
Issue Type: Bug
Components: query-sql
Affects Versions: 3.2.6
Environment: Hibernate 3.2.6GA
Oracle 10.2.0.4 (& Oracle JDBC Driver version - 11.1.0.6.0)
Java 1.6.0_06
Reporter: RC
Using a stored procedure to fetch result set.
However, an IllegalAccessException is thrown:
Caused by: org.hibernate.HibernateException: Problem while trying to load or access OracleTypes.CURSOR value
at org.hibernate.dialect.Oracle8iDialect.registerResultSetOutParameter(Oracle8iDialect.java:371)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1560)
at org.hibernate.loader.Loader.doQuery(Loader.java:673)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
at org.hibernate.loader.Loader.doList(Loader.java:2213)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
at org.hibernate.loader.Loader.list(Loader.java:2099)
at org.hibernate.loader.custom.CustomLoader.list(CustomLoader.java:289)
at org.hibernate.impl.SessionImpl.listCustomQuery(SessionImpl.java:1695)
at org.hibernate.impl.AbstractSessionImpl.list(AbstractSessionImpl.java:142)
at org.hibernate.impl.SQLQueryImpl.list(SQLQueryImpl.java:152)
at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
....
Caused by: java.lang.IllegalAccessException: Class org.hibernate.dialect.Oracle8iDialect can not access a member of class oracle.jdbc.driver.OracleTypes with modifiers ""
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
at java.lang.Class.newInstance0(Class.java:349)
at java.lang.Class.newInstance(Class.java:308)
at org.hibernate.dialect.Oracle8iDialect.registerResultSetOutParameter(Oracle8iDialect.java:369)
... 35 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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months
[Hibernate-JIRA] Created: (HHH-3395) Oracle LONG datatype fetching fails on superclass Criteria query
by Ville Anttonen (JIRA)
Oracle LONG datatype fetching fails on superclass Criteria query
----------------------------------------------------------------
Key: HHH-3395
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3395
Project: Hibernate3
Issue Type: Bug
Environment: Oracle 10
Windows XP
Hibernate 3
Weblogic 9.2
Reporter: Ville Anttonen
I have dao-layer method like this.
public PersistentQuery getPersistentQuery(String userId, long queryId){
....
Criteria criteria = m_session.createCriteria(PersistentQuery.class);
criteria.add(Expression.eq("userId",userId));
criteria.add(Expression.eq("id",new Long(queryId)));
return (PersistentQuery) criteria.uniqueResult();
.....
}
Previous code throws "Stream already closed" exception.
PersistentQuery is abstract class
and it's subclasses contains UserType - field
that wraps Oracle's long varchar field.
I can fix this by creating criteria by subclass
like " Criteria criteria = m_session.createCriteria(PersistentOrganizationQuery.class); ".
We're migrating from ingres -> oracle and in ingres previous implementation worked fine.
--
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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months
[Hibernate-JIRA] Created: (HHH-4026) one-to-one non-lazy loading but Filters Not Applied.
by Sandeep Vaid (JIRA)
one-to-one non-lazy loading but Filters Not Applied.
----------------------------------------------------
Key: HHH-4026
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-4026
Project: Hibernate Core
Issue Type: Patch
Components: core
Affects Versions: 3.3.2, 3.3.1, 3.3.0.SP1, 3.3.0.GA, 3.3.0.CR2, 3.3.0.CR1, 3.2.7, 3.2.6
Environment: Hibernate 3.2.6
Reporter: Sandeep Vaid
Attachments: EntityJoinWalker.java
While fetching one-to-one association, filters are not applied.
I have modified the hibernate code to resolve this issue. With these changes, if filters a are enabled for one-to-one associations,
they will be applied (appear in sql) else not.
Changes Done:
A) In EntityJoinWalker.java >> constructor:line 40
Current Code:
StringBuffer whereCondition = whereString( getAlias(), uniqueKey, batchSize )
//include the discriminator and class-level where, but not filters
.append( persister.filterFragment( getAlias(), Collections.EMPTY_MAP ) );
Changed Code:
StringBuffer whereCondition = whereString( getAlias(), uniqueKey, batchSize );
//include the discriminator and class-level where, but not filters
String filter= persister.filterFragment( getAlias(), enabledFilters);
whereCondition.insert( 0, StringHelper.moveAndToBeginning(filter) );
--
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....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 9 months