You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(110) |
Nov
(296) |
Dec
(107) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(212) |
Feb
(263) |
Mar
(161) |
Apr
(183) |
May
(183) |
Jun
(75) |
Jul
(106) |
Aug
(88) |
Sep
(227) |
Oct
(143) |
Nov
(154) |
Dec
(53) |
2008 |
Jan
(77) |
Feb
|
Mar
|
Apr
(6) |
May
(103) |
Jun
(296) |
Jul
(54) |
Aug
|
Sep
(379) |
Oct
(283) |
Nov
(224) |
Dec
(214) |
2009 |
Jan
(129) |
Feb
(257) |
Mar
(136) |
Apr
(12) |
May
(329) |
Jun
(434) |
Jul
(375) |
Aug
(171) |
Sep
|
Oct
|
Nov
|
Dec
(54) |
2010 |
Jan
(198) |
Feb
(76) |
Mar
(3) |
Apr
(1) |
May
|
Jun
(62) |
Jul
(210) |
Aug
(447) |
Sep
(330) |
Oct
(257) |
Nov
(133) |
Dec
(453) |
2011 |
Jan
(240) |
Feb
(128) |
Mar
(442) |
Apr
(320) |
May
(428) |
Jun
(141) |
Jul
(13) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Fabio M. (JIRA) <nh...@gm...> - 2011-06-27 23:33:03
|
[ http://216.121.112.228/browse/NH-2779?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Fabio Maulo updated NH-2779: ---------------------------- Affects Version/s: (was: 3.2.0Beta1) (was: 3.2.0Alpha3) (was: 3.2.0Alpha2) (was: 3.2.0Alpha1) (was: 3.1.0) > Session.Get() can throw InvalidCastException when log-level is set to DEBUG > --------------------------------------------------------------------------- > > Key: NH-2779 > URL: http://216.121.112.228/browse/NH-2779 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: Andreas Rosenbaum > Priority: Major > Attachments: NH0000.zip > > > this problem occurs when > * log-level ist set to DEBUG > * mapping is master-detail with property-ref and different data type for id and reference property > stacktrace: > ADOExceptionReporter:0 - System.InvalidCastException: Das Objekt des Typs "System.Int32" kann nicht in Typ "System.String" umgewandelt werden. > bei NHibernate.Type.AbstractStringType.ToString(Object val) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\AbstractStringType.cs:Zeile 32. > bei NHibernate.Type.NullableType.ToLoggableString(Object value, ISessionFactoryImplementor factory) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\NullableType.cs:Zeile 109. > bei NHibernate.Impl.MessageHelper.InfoString(ICollectionPersister persister, Object id, ISessionFactoryImplementor factory) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Impl\MessageHelper.cs:Zeile 296. > bei NHibernate.Engine.Loading.LoadContexts.LocateLoadingCollection(ICollectionPersister persister, Object ownerKey) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Engine\Loading\LoadContexts.cs:Zeile 170. > bei NHibernate.Type.CollectionType.GetCollection(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 247. > bei NHibernate.Type.CollectionType.ResolveKey(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 232. > bei NHibernate.Type.CollectionType.ResolveIdentifier(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 227. > bei NHibernate.Engine.TwoPhaseLoad.InitializeEntity(Object entity, Boolean readOnly, ISessionImplementor session, PreLoadEvent preLoadEvent, PostLoadEvent postLoadEvent) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Engine\TwoPhaseLoad.cs:Zeile 79. > bei NHibernate.Loader.Loader.InitializeEntitiesAndCollections(IList hydratedObjects, Object resultSetId, ISessionImplementor session, Boolean readOnly) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 600. > bei NHibernate.Loader.Loader.DoQuery(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 475. > bei NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 246. > bei NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 1589. > unit-test is attached -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 17:25:10
|
[ http://216.121.112.228/browse/NH-2752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21335#action_21335 ] Patrick Earl commented on NH-2752: ---------------------------------- This is in 3.7.7, but there hasn't been a System.Data.SQLite package released with the fix. > Re-enable CriteriaQueryTest.AllowToSetLimitOnSubquries for SQLite > ----------------------------------------------------------------- > > Key: NH-2752 > URL: http://216.121.112.228/browse/NH-2752 > Project: NHibernate > Issue Type: Task > Components: Tests > Affects Versions: 3.2.0Beta1 > Reporter: Patrick Earl > Assignee: Patrick Earl > > SQLite seems to have a bug related to named query parameters in subquery limit clauses. This has been reported to the sqlite-users mailing list and hopefully a fix will be made available soon. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Andreas R. (JIRA) <nh...@gm...> - 2011-06-27 15:52:58
|
Session.Get() can throw InvalidCastException when log-level is set to DEBUG --------------------------------------------------------------------------- Key: NH-2779 URL: http://216.121.112.228/browse/NH-2779 Project: NHibernate Issue Type: Bug Components: Core Affects Versions: 3.2.0Beta2, 3.2.0Beta1, 3.2.0Alpha3, 3.2.0Alpha2, 3.2.0Alpha1, 3.1.0 Reporter: Andreas Rosenbaum Priority: Major Attachments: NH0000.zip this problem occurs when * log-level ist set to DEBUG * mapping is master-detail with property-ref and different data type for id and reference property stacktrace: ADOExceptionReporter:0 - System.InvalidCastException: Das Objekt des Typs "System.Int32" kann nicht in Typ "System.String" umgewandelt werden. bei NHibernate.Type.AbstractStringType.ToString(Object val) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\AbstractStringType.cs:Zeile 32. bei NHibernate.Type.NullableType.ToLoggableString(Object value, ISessionFactoryImplementor factory) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\NullableType.cs:Zeile 109. bei NHibernate.Impl.MessageHelper.InfoString(ICollectionPersister persister, Object id, ISessionFactoryImplementor factory) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Impl\MessageHelper.cs:Zeile 296. bei NHibernate.Engine.Loading.LoadContexts.LocateLoadingCollection(ICollectionPersister persister, Object ownerKey) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Engine\Loading\LoadContexts.cs:Zeile 170. bei NHibernate.Type.CollectionType.GetCollection(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 247. bei NHibernate.Type.CollectionType.ResolveKey(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 232. bei NHibernate.Type.CollectionType.ResolveIdentifier(Object key, ISessionImplementor session, Object owner) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Type\CollectionType.cs:Zeile 227. bei NHibernate.Engine.TwoPhaseLoad.InitializeEntity(Object entity, Boolean readOnly, ISessionImplementor session, PreLoadEvent preLoadEvent, PostLoadEvent postLoadEvent) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Engine\TwoPhaseLoad.cs:Zeile 79. bei NHibernate.Loader.Loader.InitializeEntitiesAndCollections(IList hydratedObjects, Object resultSetId, ISessionImplementor session, Boolean readOnly) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 600. bei NHibernate.Loader.Loader.DoQuery(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 475. bei NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor session, QueryParameters queryParameters, Boolean returnProxies) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 246. bei NHibernate.Loader.Loader.DoList(ISessionImplementor session, QueryParameters queryParameters) in D:\Projekte\Recherche\NHibernate\NHibernate_trunk\nhibernate\src\NHibernate\Loader\Loader.cs:Zeile 1589. unit-test is attached -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Oleg S. (JIRA) <nh...@gm...> - 2011-06-27 15:18:59
|
Batcher for MySql ----------------- Key: NH-2778 URL: http://216.121.112.228/browse/NH-2778 Project: NHibernate Issue Type: Patch Components: DataProviders / Dialects Affects Versions: 3.2.0CR1 Reporter: Oleg Sakharov Priority: Major Attachments: MySqlBatcher.patch Hi, Few months ago I found that there is no way to do bulk updates for MySql in NHibernate. After few days of using Reflector on both NHibernate and MySql data provider, I realised that implementing this feature shoudln't be hard. Please, have a look at the patch attached. I created it using trunk rev. 5972. Besides code changes, it also requires MySql.Data.dll. It should work with any version of MySql.Data.dll greater than 5.2.3.0 (at least). I assume, that having a reference to MySql.Data.dll in the NHibernate solution file is probably the biggest question, and, maybe, the actual reason why this batcher wasn't implemented before. I'm open to any discussion re this matter. Looking forward to your response. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: batman.ua (JIRA) <nh...@gm...> - 2011-06-27 13:27:58
|
[ http://216.121.112.228/browse/NH-2777?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] batman.ua updated NH-2777: -------------------------- Attachment: NH2777.patch NH2777.zip Unit test & patch > IndexOutOfRangeException when inserting entity with non-inverse one-to-many, with a not-null fk > ----------------------------------------------------------------------------------------------- > > Key: NH-2777 > URL: http://216.121.112.228/browse/NH-2777 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: batman.ua > Priority: Major > Attachments: NH2777.patch, NH2777.zip > > > IndexOutOfRangeException when inserting entity with non-inverse one-to-many, with a not-null fk. > Environment: > MS SQL Server 2008 R2 ExpressEdition, .NET 3.5 > Stack trace: > at System.Data.SqlClient.SqlParameterCollection.RangeCheck(Int32 index) > at System.Data.SqlClient.SqlParameterCollection.GetParameter(Int32 index) > at System.Data.Common.DbParameterCollection.System.Collections.IList.get_Item(Int32 index) > at NHibernate.Type.Int64Type.Set(IDbCommand rs, Object value, Int32 index) > at NHibernate.Type.NullableType.NullSafeSet(IDbCommand cmd, Object value, Int32 index) > at NHibernate.Persister.Entity.AbstractEntityPersister.Dehydrate(Object id, Object[] fields, Object rowId, Boolean[] includeProperty, Boolean[][] includeColumns, Int32 table, IDbCommand statement, ISessionImplementor session, Int32 index) > at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session) > at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Object obj, ISessionImplementor session) > at NHibernate.Action.EntityInsertAction.Execute() > at NHibernate.Engine.ActionQueue.Execute(IExecutable executable) > at NHibernate.Engine.ActionQueue.ExecuteActions(IList list) > at NHibernate.Engine.ActionQueue.ExecuteActions() > at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) > at NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event) > at NHibernate.Impl.SessionImpl.Flush() > at NHibernate.Transaction.AdoTransaction.Commit() > at NHibernate.Test.NHSpecificTest.NH1234.Test.InsertSlaveWithNonNullKey() in -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: batman.ua (JIRA) <nh...@gm...> - 2011-06-27 13:24:58
|
IndexOutOfRangeException when inserting entity with non-inverse one-to-many, with a not-null fk ----------------------------------------------------------------------------------------------- Key: NH-2777 URL: http://216.121.112.228/browse/NH-2777 Project: NHibernate Issue Type: Bug Components: Core Affects Versions: 3.2.0Beta2 Reporter: batman.ua Priority: Major IndexOutOfRangeException when inserting entity with non-inverse one-to-many, with a not-null fk. Environment: MS SQL Server 2008 R2 ExpressEdition, .NET 3.5 Stack trace: at System.Data.SqlClient.SqlParameterCollection.RangeCheck(Int32 index) at System.Data.SqlClient.SqlParameterCollection.GetParameter(Int32 index) at System.Data.Common.DbParameterCollection.System.Collections.IList.get_Item(Int32 index) at NHibernate.Type.Int64Type.Set(IDbCommand rs, Object value, Int32 index) at NHibernate.Type.NullableType.NullSafeSet(IDbCommand cmd, Object value, Int32 index) at NHibernate.Persister.Entity.AbstractEntityPersister.Dehydrate(Object id, Object[] fields, Object rowId, Boolean[] includeProperty, Boolean[][] includeColumns, Int32 table, IDbCommand statement, ISessionImplementor session, Int32 index) at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session) at NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Object obj, ISessionImplementor session) at NHibernate.Action.EntityInsertAction.Execute() at NHibernate.Engine.ActionQueue.Execute(IExecutable executable) at NHibernate.Engine.ActionQueue.ExecuteActions(IList list) at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event) at NHibernate.Impl.SessionImpl.Flush() at NHibernate.Transaction.AdoTransaction.Commit() at NHibernate.Test.NHSpecificTest.NH1234.Test.InsertSlaveWithNonNullKey() in -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 04:20:57
|
[ http://216.121.112.228/browse/NH-2387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Earl resolved NH-2387. ------------------------------ Resolution: Fixed Fix Version/s: 3.2.0CR1 Assignee: Patrick Earl This was fixed a while ago. I just added a couple extra tests that resemble the scenario. > Postgres - Unable to run LINQ query using boolean predicate - ERROR: 42883: operator does not exist: boolean = integer > ---------------------------------------------------------------------------------------------------------------------- > > Key: NH-2387 > URL: http://216.121.112.228/browse/NH-2387 > Project: NHibernate > Issue Type: Bug > Components: Linq Provider > Affects Versions: 3.0.0.Beta1 > Reporter: Jeremey Trout > Assignee: Patrick Earl > Priority: Major > Fix For: 3.2.0CR1 > > > Take a simple LINQ query, as follows: > var x = _session.Query<Notification>.Where(n => n.Owner == this.CurrentOwner).Where(n => n.HasBeenRead == false); > And it falls over with the following: > WARN: > Npgsql.NpgsqlException: > operator does not exist: boolean = integer > Severity: ERROR > Code: 42883 > Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts. > at Npgsql.NpgsqlState.<ProcessBackendResponses_Ver_3>d__a.MoveNext() in C:\projects\Npgsql2\src\Npgsql\NpgsqlState.cs:line 839 > at Npgsql.ForwardsOnlyDataReader.GetNextResponseObject() in C:\projects\Npgsql2\src\Npgsql\NpgsqlDataReader.cs:line 1163 > at Npgsql.ForwardsOnlyDataReader.GetNextRowDescription() in C:\projects\Npgsql2\src\Npgsql\NpgsqlDataReader.cs:line 1181 > at Npgsql.ForwardsOnlyDataReader.NextResult() in C:\projects\Npgsql2\src\Npgsql\NpgsqlDataReader.cs:line 1367 > at Npgsql.ForwardsOnlyDataReader..ctor(IEnumerable`1 dataEnumeration, CommandBehavior behavior, NpgsqlCommand command, NotificationThreadBlock threadBlock, Boolean synchOnReadError) in C:\projects\Npgsql2\src\Npgsql\NpgsqlDataReader.cs:line 1030 > at Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 609 > at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior cb) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 588 > at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 538 > at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader() > at NHibernate.AdoNet.AbstractBatcher.ExecuteReader(IDbCommand cmd) in d:\CSharp\NH\nhibernate\src\NHibernate\AdoNet\AbstractBatcher.cs:line 247 > at NHibernate.Loader.Loader.GetResultSet(IDbCommand st, Boolean autoDiscoverTypes, Boolean callable, RowSelection selection, ISessionImplementor session) in d:\CSharp\NH\nhibernate\src\NHibernate\Loader\Loader.cs:line 1313 -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 03:56:57
|
[ http://216.121.112.228/browse/NH-2748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Earl resolved NH-2748. ------------------------------ Resolution: Fixed Fix Version/s: 3.2.0CR1 > Support % operator > ------------------ > > Key: NH-2748 > URL: http://216.121.112.228/browse/NH-2748 > Project: NHibernate > Issue Type: Improvement > Components: Linq Provider > Affects Versions: 3.2.0Beta1 > Reporter: Patrick Earl > Assignee: Patrick Earl > Fix For: 3.2.0CR1 > > -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 01:44:00
|
[ http://216.121.112.228/browse/NH-2752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21332#action_21332 ] Patrick Earl commented on NH-2752: ---------------------------------- This was fixed in SQLite core. We just need to wait for a new version of System.Data.SQLite that includes the fix. > Re-enable CriteriaQueryTest.AllowToSetLimitOnSubquries for SQLite > ----------------------------------------------------------------- > > Key: NH-2752 > URL: http://216.121.112.228/browse/NH-2752 > Project: NHibernate > Issue Type: Task > Components: Tests > Affects Versions: 3.2.0Beta1 > Reporter: Patrick Earl > Assignee: Patrick Earl > > SQLite seems to have a bug related to named query parameters in subquery limit clauses. This has been reported to the sqlite-users mailing list and hopefully a fix will be made available soon. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 01:41:57
|
[ http://216.121.112.228/browse/NH-2435?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Earl resolved NH-2435. ------------------------------ Resolution: Fixed Fix Version/s: 3.2.0CR1 > No order by clause generated with self referencing orderby clause. > ------------------------------------------------------------------ > > Key: NH-2435 > URL: http://216.121.112.228/browse/NH-2435 > Project: NHibernate > Issue Type: Bug > Components: Linq Provider > Affects Versions: 3.0.0.CR1 > Reporter: Patrick Earl > Assignee: Patrick Earl > Priority: Minor > Fix For: 3.2.0CR1 > > -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Patrick E. (JIRA) <nh...@gm...> - 2011-06-27 01:10:59
|
[ http://216.121.112.228/browse/NH-2583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Patrick Earl resolved NH-2583. ------------------------------ Resolution: Fixed Fix Version/s: 3.2.0CR1 I'm happy to report that based on Harald's very helpful framing of the problem, I was able to find a simple solution where the correctness is easy to understand. This is now implemented and I'm not aware of any deficiencies (aside from not optimizing to inner joins on some occasions). > Query with || operator and navigations (many-to-one) creates wrong joins > ------------------------------------------------------------------------ > > Key: NH-2583 > URL: http://216.121.112.228/browse/NH-2583 > Project: NHibernate > Issue Type: Bug > Components: Linq Provider > Affects Versions: 3.1.0 > Reporter: Harald M. Müller > Assignee: Patrick Earl > Priority: Critical > Fix For: 3.2.0CR1 > > Attachments: AbstractMassTestingFixture.cs, Domain.cs, JoinOptimizationForPureOuterJoinSemantics.txt, LogicalOperatorsInNHibernateLinq.txt, NH-2583a.diff, NH-2583b.diff, NH-2583c.diff, NH-2583d.diff, NH-2583e.diff, NH-2583f.diff, NH-2583g.diff, NH-2583g2ndTry.patch, NH2583.7z, NHib3.0.0Or.zip > > > The following query > var result = session.Query<MyBO>() > .Where(bo => > (bo.BO1 != null && bo.BO1.I2 == 101) || > (bo.BO2 != null && bo.BO2.J2 == 203) > ) > ; > result.ToList(); > creates the following SQL on SQL Server 2008 (with .Net 4.0, MsSql2008Dialect): > exec sp_executesql N'select mybo0_.Id as Id0_, mybo0_.Name as Name0_, mybo0_.BO1Key as BO3_0_, mybo0_.OtherBO1Key as OtherBO4_0_, mybo0_.BO2Key as BO5_0_ from MyBO mybo0_, MyRef1 myref1x1_, MyRef2 myref2x2_ where mybo0_.BO1Key=myref1x1_.Id and mybo0_.BO2Key=myref2x2_.Id and ((mybo0_.BO1Key is not null) and myref1x1_.I2=@p0 or (mybo0_.BO2Key is not null) and myref2x2_.J2=@p1)',N'@p0 int,@p1 int',@p0=101,@p1=203 > or, formatted: > SELECT mybo0_.id AS id0_, > mybo0_.name AS name0_, > mybo0_.bo1key AS bo3_0_, > mybo0_.otherbo1key AS otherbo4_0_, > mybo0_.bo2key AS bo5_0_ > FROM mybo mybo0_, > myref1 myref1x1_, > myref2 myref2x2_ > WHERE mybo0_.bo1key = myref1x1_.id -- inner (table) join > AND mybo0_.bo2key = myref2x2_.id -- also inner (table) join > AND ( ( mybo0_.bo1key IS NOT NULL ) > AND myref1x1_.i2 = @p0 > OR ( mybo0_.bo2key IS NOT NULL ) > AND myref2x2_.j2 = @p1 ) > This is wrong if the reference to ref1 or ref2 is null. The attachment contains a small project that shows the problem. > AFAIK, the problem has been always present when using HQL navigations (a.b.c....); it is - somewhat implicitly - documented in seciotn 13.7.: > Compound path expressions make the where clause extremely powerful. Consider: > from Eg.Cat cat where cat.Mate.Name is not null > This query translates to an SQL query with a table (inner) join. > In HQL, one can claim that this is "a feature" (and the workaround is to use manual JOINs). With Linq, this is no longer possible - the semantics of the || operator should be correctly implemented, shouldn't it? Therefore, I dared to mark this bug as "Critical". > (... or - please - show me that I'm wrong and that || + navigation work as expected!). > Remark: In our project, which started with NHib 0.99 six years ago, we(I) wrote a complete expression framework akin to Linq (but only with conditions, not with expressions). When we found this problem, I rewrote the HQL builder so that it then created (and still creates) correct INNER or OUTER JOINs, depending on the expression tree (one has to consider Is-Null/Is-Not-Null operators and Not nodes above these, as far as I remember ... I'd have to look into our code). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Fabio M. (JIRA) <nh...@gm...> - 2011-06-26 12:58:05
|
[ http://216.121.112.228/browse/NH-2775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21330#action_21330 ] Fabio Maulo commented on NH-2775: --------------------------------- does it work with the fix ? > ISession.Merge with two circularly cascaded child collections > ------------------------------------------------------------- > > Key: NH-2775 > URL: http://216.121.112.228/browse/NH-2775 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: rbe...@pt... > Priority: Major > Attachments: nhibernate-test-lite.7z > > > When I merge an object that has two circularly cascaded child collections, and I've deleted a single item from both collections, all items are deleted from the database and the merge result is correct. This also means that the merge result is inconsistent with the database. > In short, the model: > Product has many Orders, which have many OrderItems. > OrderItem has many ChildOrderItems. > The process: > Product has one Order with two OrderItems, one of which is a child OrderItem (we'll call it childOrderItem) the other of which is the parent OrderItem (orderItem). > The following will cause the behavior: > order.OrderItems.Remove(childOrderItem); > orderItem.ChildOrderItems.Remove(childOrderItem); > Product product = (Product)session.Merge(detachedProduct); > Expected: > order.OrderItems will have one item (orderItem) and orderItem will have no child items. The merge result (product) should be representative of what's in the database. > Expected SQL: > UPDATE [Order] > DELETE [OrderItem] > Actual: > order.OrderItems has one item (orderItem) and orderItem has no child items. The merge result (product) is NOT representative of what's in the database. > Actual SQL: > UPDATE [Order] > DELETE [OrderItem] > DELETE [OrderItem] > See the attached test. I've just pulled from trunk and tested the project against that version (rev5968). > I've looked through the merge code, and am not familiar enough, nor do I have the time needed to become familiar right now, so I have no patch (sorry). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Julian M. (JIRA) <nh...@gm...> - 2011-06-26 04:17:49
|
[ http://216.121.112.228/browse/NH-2776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Maughan closed NH-2776. ------------------------------ Resolution: Not an Issue > Associated Collection for composite-id object doesn't load with query. > ---------------------------------------------------------------------- > > Key: NH-2776 > URL: http://216.121.112.228/browse/NH-2776 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: mod sartawi > > I have standard header-detail mapping.. > // Header > <class name="CheckbookTrx" table="CheckbookTrx"> > <composite-id> > <key-property name="TrxType" /> > <key-property name="TrxNumber" /> > </composite-id> > > <property name="TrxType" /> > <property name="TrxDate" /> > <property name="Amount" /> > <property name="Description" /> > <property name="CheckbookID" /> > <set name="TrxDetails" table="CheckbookTrxDetail" > > <key > > <column name="TrxType" /> > <column name="TrxNumber" /> > </key> > <one-to-many class="CheckbookTrxDetail" /> > </set> > > </class> > /////////////// detail ////////////////// > <class name="CheckbookTrxDetail" table="CheckbookTrxDetail"> > <composite-id> > <key-many-to-one name="Trx"> > <column name="TrxType"/> > <column name="TrxNumber"/> > </key-many-to-one> > > <key-property name="LineNumber" /> > </composite-id> > <property name="AccountNumber" /> > <property name="Debit" /> > <property name="Credit" /> > <property name="LineDescription" /> > > </class> > //////////////////////////////////// > when I create new object for header and detail and save it to database it's work fine. > but when I query from database it's load header object with empty details, but when I use for header single ID it's load it with details. BTW I try query by LINQ and by other ways and use all fetch types but no luck. > Thanks in advance. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: <rbe...@pt...> - 2011-06-25 21:50:49
|
[ http://216.121.112.228/browse/NH-2775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21326#action_21326 ] rbe...@pt... commented on NH-2775: -------------------------------------------- Oh my goodness - thanks for that! I ended up porting a damn typo into the repro! You say that the mapping is "very bad (in general)" - is there something other than the wrong key-column that you would change? > ISession.Merge with two circularly cascaded child collections > ------------------------------------------------------------- > > Key: NH-2775 > URL: http://216.121.112.228/browse/NH-2775 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: rbe...@pt... > Priority: Major > Attachments: nhibernate-test-lite.7z > > > When I merge an object that has two circularly cascaded child collections, and I've deleted a single item from both collections, all items are deleted from the database and the merge result is correct. This also means that the merge result is inconsistent with the database. > In short, the model: > Product has many Orders, which have many OrderItems. > OrderItem has many ChildOrderItems. > The process: > Product has one Order with two OrderItems, one of which is a child OrderItem (we'll call it childOrderItem) the other of which is the parent OrderItem (orderItem). > The following will cause the behavior: > order.OrderItems.Remove(childOrderItem); > orderItem.ChildOrderItems.Remove(childOrderItem); > Product product = (Product)session.Merge(detachedProduct); > Expected: > order.OrderItems will have one item (orderItem) and orderItem will have no child items. The merge result (product) should be representative of what's in the database. > Expected SQL: > UPDATE [Order] > DELETE [OrderItem] > Actual: > order.OrderItems has one item (orderItem) and orderItem has no child items. The merge result (product) is NOT representative of what's in the database. > Actual SQL: > UPDATE [Order] > DELETE [OrderItem] > DELETE [OrderItem] > See the attached test. I've just pulled from trunk and tested the project against that version (rev5968). > I've looked through the merge code, and am not familiar enough, nor do I have the time needed to become familiar right now, so I have no patch (sorry). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: mod s. (JIRA) <nh...@gm...> - 2011-06-25 21:41:48
|
[ http://216.121.112.228/browse/NH-2776?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21325#action_21325 ] mod sartawi commented on NH-2776: --------------------------------- Sorry about the issue it's work fine now. I just forgot to override GetHashCode() well. > Associated Collection for composite-id object doesn't load with query. > ---------------------------------------------------------------------- > > Key: NH-2776 > URL: http://216.121.112.228/browse/NH-2776 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: mod sartawi > > I have standard header-detail mapping.. > // Header > <class name="CheckbookTrx" table="CheckbookTrx"> > <composite-id> > <key-property name="TrxType" /> > <key-property name="TrxNumber" /> > </composite-id> > > <property name="TrxType" /> > <property name="TrxDate" /> > <property name="Amount" /> > <property name="Description" /> > <property name="CheckbookID" /> > <set name="TrxDetails" table="CheckbookTrxDetail" > > <key > > <column name="TrxType" /> > <column name="TrxNumber" /> > </key> > <one-to-many class="CheckbookTrxDetail" /> > </set> > > </class> > /////////////// detail ////////////////// > <class name="CheckbookTrxDetail" table="CheckbookTrxDetail"> > <composite-id> > <key-many-to-one name="Trx"> > <column name="TrxType"/> > <column name="TrxNumber"/> > </key-many-to-one> > > <key-property name="LineNumber" /> > </composite-id> > <property name="AccountNumber" /> > <property name="Debit" /> > <property name="Credit" /> > <property name="LineDescription" /> > > </class> > //////////////////////////////////// > when I create new object for header and detail and save it to database it's work fine. > but when I query from database it's load header object with empty details, but when I use for header single ID it's load it with details. BTW I try query by LINQ and by other ways and use all fetch types but no luck. > Thanks in advance. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: mod s. (JIRA) <nh...@gm...> - 2011-06-25 20:52:43
|
Associated Collection for composite-id object doesn't load with query. ---------------------------------------------------------------------- Key: NH-2776 URL: http://216.121.112.228/browse/NH-2776 Project: NHibernate Issue Type: Bug Components: Core Affects Versions: 3.2.0Beta2 Reporter: mod sartawi I have standard header-detail mapping.. // Header <class name="CheckbookTrx" table="CheckbookTrx"> <composite-id> <key-property name="TrxType" /> <key-property name="TrxNumber" /> </composite-id> <property name="TrxType" /> <property name="TrxDate" /> <property name="Amount" /> <property name="Description" /> <property name="CheckbookID" /> <set name="TrxDetails" table="CheckbookTrxDetail" > <key > <column name="TrxType" /> <column name="TrxNumber" /> </key> <one-to-many class="CheckbookTrxDetail" /> </set> </class> /////////////// detail ////////////////// <class name="CheckbookTrxDetail" table="CheckbookTrxDetail"> <composite-id> <key-many-to-one name="Trx"> <column name="TrxType"/> <column name="TrxNumber"/> </key-many-to-one> <key-property name="LineNumber" /> </composite-id> <property name="AccountNumber" /> <property name="Debit" /> <property name="Credit" /> <property name="LineDescription" /> </class> //////////////////////////////////// when I create new object for header and detail and save it to database it's work fine. but when I query from database it's load header object with empty details, but when I use for header single ID it's load it with details. BTW I try query by LINQ and by other ways and use all fetch types but no luck. Thanks in advance. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Fabio M. (JIRA) <nh...@gm...> - 2011-06-25 17:34:51
|
[ http://216.121.112.228/browse/NH-2775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21324#action_21324 ] Fabio Maulo commented on NH-2775: --------------------------------- very bad mapping (in general) with an error on ChildOrderItems: the key-column should be "ParentOrderItemId" and not "OrderItemId". > ISession.Merge with two circularly cascaded child collections > ------------------------------------------------------------- > > Key: NH-2775 > URL: http://216.121.112.228/browse/NH-2775 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: rbe...@pt... > Priority: Major > Attachments: nhibernate-test-lite.7z > > > When I merge an object that has two circularly cascaded child collections, and I've deleted a single item from both collections, all items are deleted from the database and the merge result is correct. This also means that the merge result is inconsistent with the database. > In short, the model: > Product has many Orders, which have many OrderItems. > OrderItem has many ChildOrderItems. > The process: > Product has one Order with two OrderItems, one of which is a child OrderItem (we'll call it childOrderItem) the other of which is the parent OrderItem (orderItem). > The following will cause the behavior: > order.OrderItems.Remove(childOrderItem); > orderItem.ChildOrderItems.Remove(childOrderItem); > Product product = (Product)session.Merge(detachedProduct); > Expected: > order.OrderItems will have one item (orderItem) and orderItem will have no child items. The merge result (product) should be representative of what's in the database. > Expected SQL: > UPDATE [Order] > DELETE [OrderItem] > Actual: > order.OrderItems has one item (orderItem) and orderItem has no child items. The merge result (product) is NOT representative of what's in the database. > Actual SQL: > UPDATE [Order] > DELETE [OrderItem] > DELETE [OrderItem] > See the attached test. I've just pulled from trunk and tested the project against that version (rev5968). > I've looked through the merge code, and am not familiar enough, nor do I have the time needed to become familiar right now, so I have no patch (sorry). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: AJCS (JIRA) <nh...@gm...> - 2011-06-25 03:44:42
|
[ http://216.121.112.228/browse/NH-2296?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] AJCS updated NH-2296: --------------------- Attachment: SubselectFetchFixture.zip It still fails if the main query has an Order clause. I'm attaching a test that I've added to the ones in SubselectFetchFixture.cs > Subselect fetching strategy with a "SetMaxResults" query generates *extremely* inefficient sql > ---------------------------------------------------------------------------------------------- > > Key: NH-2296 > URL: http://216.121.112.228/browse/NH-2296 > Project: NHibernate > Issue Type: Bug > Components: DataProviders / Dialects > Affects Versions: 3.0.0.Alpha2 > Reporter: Gabe Moothart > Priority: Critical > Fix For: 3.2.0Beta2 > > Attachments: NH2296.Test.patch, nhib_test.zip, SubselectFetchFixture.zip > > > Observed in NHibernate 3.0 Alpha 2, and also 2.1.2.GA, with the SqlServer2008 dialect. > Assume you have a master table with a one-to-many association on a detail table, and that association has the subselect fetching strategy. > If you issue a simple query against the master object using SetMaxResults to restrict the number of rows returned, and then access one of the detail objects (triggering the subselect fetch query), the subselect sql will not be generated with a "TOP". This results in a query that returns an unbounded number of unnecessary records! > A simple example, from the attached reproduction: > var qry = sess.CreateQuery("select o from Order o") > .SetMaxResults(2) > .List<Order>(); > // trigger lazy-loading of products, using subselect fetch. > string sr = orders[0].Products[0].StatusReason; > Generates the following sql: > NHibernate: select TOP (@p0) [...] > from [Order] order0_;@p0 = 2 [Type: Int32 (0)] > NHibernate: SELECT [...] FROM [Product] products0_ > WHERE products0_.Order_id in (select order0_.Id from [Order] order0_) > You can see that the subselect in the second query is unbounded and returns every Product attached to *any* order, not just the top two! I've attached a simple solution containing a reproducible test case. Run the console application and inspect the SQL that is output. You can clearly see what I am talking about. > This makes subselect fetching practically useless for most scenarios. In my case it returns 20,000 rows when 20 or so would do. I consider it a critical issue. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Evgeniy (JIRA) <nh...@gm...> - 2011-06-24 06:19:52
|
[ http://216.121.112.228/browse/NH-2678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21322#action_21322 ] Evgeniy commented on NH-2678: ----------------------------- Duplicate here: NH-2744 > NotSupportedException in NewArrayInitExpression > ----------------------------------------------- > > Key: NH-2678 > URL: http://216.121.112.228/browse/NH-2678 > Project: NHibernate > Issue Type: Improvement > Components: Linq Provider > Affects Versions: 3.1.0 > Reporter: Michael Teper > Priority: Major > > The following LINQ query throws a NotSupportedException in NewArrayInitExpression: > var results = from node in ISession.Query<Node>() > select new[] { node.Manager }.Union(node.Subordinates); > In the example above, Manager is of type Person and Subordinates is a collection of Persons. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: <rbe...@pt...> - 2011-06-23 22:00:39
|
[ http://216.121.112.228/browse/NH-2775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] rbe...@pt... updated NH-2775: --------------------------------------- Attachment: nhibernate-test-lite.7z Failing test. > ISession.Merge with two circularly cascaded child collections > ------------------------------------------------------------- > > Key: NH-2775 > URL: http://216.121.112.228/browse/NH-2775 > Project: NHibernate > Issue Type: Bug > Components: Core > Affects Versions: 3.2.0Beta2 > Reporter: rbe...@pt... > Priority: Major > Attachments: nhibernate-test-lite.7z > > > When I merge an object that has two circularly cascaded child collections, and I've deleted a single item from both collections, all items are deleted from the database and the merge result is correct. This also means that the merge result is inconsistent with the database. > In short, the model: > Product has many Orders, which have many OrderItems. > OrderItem has many ChildOrderItems. > The process: > Product has one Order with two OrderItems, one of which is a child OrderItem (we'll call it childOrderItem) the other of which is the parent OrderItem (orderItem). > The following will cause the behavior: > order.OrderItems.Remove(childOrderItem); > orderItem.ChildOrderItems.Remove(childOrderItem); > Product product = (Product)session.Merge(detachedProduct); > Expected: > order.OrderItems will have one item (orderItem) and orderItem will have no child items. The merge result (product) should be representative of what's in the database. > Expected SQL: > UPDATE [Order] > DELETE [OrderItem] > Actual: > order.OrderItems has one item (orderItem) and orderItem has no child items. The merge result (product) is NOT representative of what's in the database. > Actual SQL: > UPDATE [Order] > DELETE [OrderItem] > DELETE [OrderItem] > See the attached test. I've just pulled from trunk and tested the project against that version (rev5968). > I've looked through the merge code, and am not familiar enough, nor do I have the time needed to become familiar right now, so I have no patch (sorry). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: <rbe...@pt...> - 2011-06-23 21:50:37
|
ISession.Merge with two circularly cascaded child collections ------------------------------------------------------------- Key: NH-2775 URL: http://216.121.112.228/browse/NH-2775 Project: NHibernate Issue Type: Bug Components: Core Affects Versions: 3.2.0Beta2 Reporter: rbe...@pt... Priority: Major When I merge an object that has two circularly cascaded child collections, and I've deleted a single item from both collections, all items are deleted from the database and the merge result is correct. This also means that the merge result is inconsistent with the database. In short, the model: Product has many Orders, which have many OrderItems. OrderItem has many ChildOrderItems. The process: Product has one Order with two OrderItems, one of which is a child OrderItem (we'll call it childOrderItem) the other of which is the parent OrderItem (orderItem). The following will cause the behavior: order.OrderItems.Remove(childOrderItem); orderItem.ChildOrderItems.Remove(childOrderItem); Product product = (Product)session.Merge(detachedProduct); Expected: order.OrderItems will have one item (orderItem) and orderItem will have no child items. The merge result (product) should be representative of what's in the database. Expected SQL: UPDATE [Order] DELETE [OrderItem] Actual: order.OrderItems has one item (orderItem) and orderItem has no child items. The merge result (product) is NOT representative of what's in the database. Actual SQL: UPDATE [Order] DELETE [OrderItem] DELETE [OrderItem] See the attached test. I've just pulled from trunk and tested the project against that version (rev5968). I've looked through the merge code, and am not familiar enough, nor do I have the time needed to become familiar right now, so I have no patch (sorry). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: umesh s. (JIRA) <nh...@gm...> - 2011-06-23 10:49:41
|
[ http://216.121.112.228/browse/NH-527?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21320#action_21320 ] umesh satavase commented on NH-527: ----------------------------------- hi , the module u have attached will not return the begintransaction() or endtransaction() methods for Instance property. Similarly, the session per request per with detached objects in not reflecting clearly here. Can you please share the real code or explain me the issue solution. Still, Idont understand about how you will control upon the stale connections in Pool lying there to make them active. I have been closing the session after evry use but still connections becomes unavaialable next time if I use them even if they are lying in the Pool. Please help in this regard. > connection pooling has problems in stress test. > ----------------------------------------------- > > Key: NH-527 > URL: http://216.121.112.228/browse/NH-527 > Project: NHibernate > Issue Type: Bug > Affects Versions: 1.0.1 > Reporter: Oliver Paulus > Priority: Blocker > Attachments: NHibernateSessionManager.cs, NHibernateSessionModule.cs > > > I have made a stress test of my application. After some time I saw that the memory is growing and at a point the application craches on each request. I get the following error message: > System.Web.HttpUnhandledException: Exception of type System.Web.HttpUnhandledException was thrown. ---> NHibernate.ADOException: Could not execute query ---> NHibernate.ADOException: cannot open connection ---> NHibernate.ADOException: Could not create connection from Driver ---> System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached. > at System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction) > at System.Data.SqlClient.SqlConnection.Open() > at NHibernate.Connection.DriverConnectionProvider.GetConnection() > --- End of inner exception stack trace --- > at NHibernate.Connection.DriverConnectionProvider.GetConnection() > at NHibernate.Impl.SessionFactoryImpl.OpenConnection() > --- End of inner exception stack trace --- > at NHibernate.Impl.SessionFactoryImpl.OpenConnection() > at NHibernate.Impl.SessionImpl.get_Connection() > at NHibernate.Impl.BatcherImpl.Prepare(IDbCommand command) > at NHibernate.Impl.BatcherImpl.ExecuteReader(IDbCommand cmd) > at NHibernate.Loader.Loader.GetResultSet(IDbCommand st, RowSelection selection, ISessionImplementor session) > at NHibernate.Loader.Loader.DoQuery(ISessionImplementor session, QueryParameters queryParameters, Object optionalObject, Object optionalId, Object[] optionalCollectionKeys, Boolean returnProxies) > at NHibernate.Loader.Loader.DoQueryAndInitializeNonLazyCollections(ISessionImplementor session, QueryParameters queryParameters, Object optionalObject, Object optionalId, Object[] optionalCollectionKeys, Boolean returnProxies) > at NHibernate.Loader.Loader.List(ISessionImplementor session, QueryParameters queryParameters, ISet querySpaces, IType[] resultTypes) > at NHibernate.Hql.QueryTranslator.List(ISessionImplementor session, QueryParameters queryParameters) > at NHibernate.Impl.SessionImpl.Find(String query, QueryParameters parameters) > --- End of inner exception stack trace --- > at NHibernate.Impl.SessionImpl.Find(String query, QueryParameters parameters) > at NHibernate.Impl.SessionImpl.Find(String query) > It seems that the connection pool will not release used connections. I can wait but no used collections will be released. I have to restart the application on the webserver. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Julian M. (JIRA) <nh...@gm...> - 2011-06-21 16:43:45
|
[ http://216.121.112.228/browse/NH-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21318#action_21318 ] Julian Maughan commented on NH-2214: ------------------------------------ BTW, please don't blame NH for these issues...blame SQL Server. Other database vendors seem to be able to offer a proper paging solution. We are making the best of a bad job. > Distinct and Row_number problem > ------------------------------- > > Key: NH-2214 > URL: http://216.121.112.228/browse/NH-2214 > Project: NHibernate > Issue Type: Bug > Components: DataProviders / Dialects > Affects Versions: 2.1.1.GA, 2.1.2.GA > Reporter: Carlos Martinez > Assignee: Julian Maughan > Priority: Major > Attachments: MsSql2005Dialect.cs, NH-2214-reproduction.zip, NH-2214.patch, NH-2214.patch, NH-2214.solution.patch, NH-2214.zip > > > Microsoft.NET Framework 3.5 > MSSQL 2008 > Select distinct T.ID, T.Name from T > inner join T2 on T.ID = T2.TID > order by T.Name > With this native query (using ISQLQuery) and the statement "DISTINCT" is necessary because the union wiht T2 produces duplicate results of T. > if I use > SetFirstResult(index) > SetMaxResults(max) > It generates the following Query > Select top max > ID, > Name > from > (select distinct > ID, > Name, > ROW_NUMBER () over (order by T.Name) as __hibernate_sort_row > from T > inner join T2) as query > where __hibernate_sort_row > index > first results are generated with ROW_NUMER, for example > T.ID T.Name __hibernate_sort_row > 2 Carlos 1 > 1 Juan 2 > 1 Juan 3 > 3 Paulina 4 > 4 Zunio 5 > 4 Zunio 6 > 4 Zunio 7 > Then "DISTINCT" no longer makes sense, because all records are different due to ROW_NUMBER. > In version 2.0.1 GA works perfectly -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Chuck L. (JIRA) <nh...@gm...> - 2011-06-21 16:19:41
|
[ http://216.121.112.228/browse/NH-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=21317#action_21317 ] Chuck Lewin commented on NH-2214: --------------------------------- I hope this fix gets into 3.2; my users urgently need it to be addressed and I'd rather not deal with the various workarounds presented above. > Distinct and Row_number problem > ------------------------------- > > Key: NH-2214 > URL: http://216.121.112.228/browse/NH-2214 > Project: NHibernate > Issue Type: Bug > Components: DataProviders / Dialects > Affects Versions: 2.1.1.GA, 2.1.2.GA > Reporter: Carlos Martinez > Assignee: Julian Maughan > Priority: Major > Attachments: MsSql2005Dialect.cs, NH-2214-reproduction.zip, NH-2214.patch, NH-2214.patch, NH-2214.solution.patch, NH-2214.zip > > > Microsoft.NET Framework 3.5 > MSSQL 2008 > Select distinct T.ID, T.Name from T > inner join T2 on T.ID = T2.TID > order by T.Name > With this native query (using ISQLQuery) and the statement "DISTINCT" is necessary because the union wiht T2 produces duplicate results of T. > if I use > SetFirstResult(index) > SetMaxResults(max) > It generates the following Query > Select top max > ID, > Name > from > (select distinct > ID, > Name, > ROW_NUMBER () over (order by T.Name) as __hibernate_sort_row > from T > inner join T2) as query > where __hibernate_sort_row > index > first results are generated with ROW_NUMER, for example > T.ID T.Name __hibernate_sort_row > 2 Carlos 1 > 1 Juan 2 > 1 Juan 3 > 3 Paulina 4 > 4 Zunio 5 > 4 Zunio 6 > 4 Zunio 7 > Then "DISTINCT" no longer makes sense, because all records are different due to ROW_NUMBER. > In version 2.0.1 GA works perfectly -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |
From: Julian M. (JIRA) <nh...@gm...> - 2011-06-21 16:08:16
|
[ http://216.121.112.228/browse/NH-2214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Maughan updated NH-2214: ------------------------------- Attachment: NH-2214.solution.patch > Distinct and Row_number problem > ------------------------------- > > Key: NH-2214 > URL: http://216.121.112.228/browse/NH-2214 > Project: NHibernate > Issue Type: Bug > Components: DataProviders / Dialects > Affects Versions: 2.1.1.GA, 2.1.2.GA > Reporter: Carlos Martinez > Assignee: Julian Maughan > Priority: Major > Attachments: MsSql2005Dialect.cs, NH-2214-reproduction.zip, NH-2214.patch, NH-2214.patch, NH-2214.solution.patch, NH-2214.zip > > > Microsoft.NET Framework 3.5 > MSSQL 2008 > Select distinct T.ID, T.Name from T > inner join T2 on T.ID = T2.TID > order by T.Name > With this native query (using ISQLQuery) and the statement "DISTINCT" is necessary because the union wiht T2 produces duplicate results of T. > if I use > SetFirstResult(index) > SetMaxResults(max) > It generates the following Query > Select top max > ID, > Name > from > (select distinct > ID, > Name, > ROW_NUMBER () over (order by T.Name) as __hibernate_sort_row > from T > inner join T2) as query > where __hibernate_sort_row > index > first results are generated with ROW_NUMER, for example > T.ID T.Name __hibernate_sort_row > 2 Carlos 1 > 1 Juan 2 > 1 Juan 3 > 3 Paulina 4 > 4 Zunio 5 > 4 Zunio 6 > 4 Zunio 7 > Then "DISTINCT" no longer makes sense, because all records are different due to ROW_NUMBER. > In version 2.0.1 GA works perfectly -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://216.121.112.228/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |