>From my experience with the migrations work, I found the code-base pretty 
workable.  There are definitely some parts that are over-engineered such as 
the existing ddl generation code.  It took me about a week to understand 
the whole mess around how Foreign/Unique keys generate their ddl.

One major hindrance was brittle unit tests. I ran into numerous situations 
where such tests didn't account for quoting or used incorrect assertions 
such as a regex rather than string match.

On Wednesday, October 22, 2014 4:26:40 PM UTC-4, Gunnar Liljas wrote:
>
> Ok, fair enough. I didn't realize that. However, I'm afraid that the 
> "mess" not only causes bugs and performance problems, but that it's also 
> preventing NH from evolving and taking advantage of new developments in 
> .NET and C#.
>
> The redesign of the Loaders is interesting, since it was primarily that 
> part that caused this week's headache. I do see a large focus on Hibernate 
> OGM now though (and Hibernate changes made because of it), and I'm just not 
> sure that the OGM part is viable effort.
>
> /G
>
> 2014-10-22 20:49 GMT+02:00 Oskar Berggren <[email protected] 
> <javascript:>>:
>
>> I often get the same feeling. But yes, we do port bug fixes from 
>> Hibernate which helps a lot. There are also features to port, but it hasn't 
>> been tracked systematically in recent years.
>>
>> One thing that's happened in Hibernate is a redesign of the Loaders (it's 
>> been committed, background is here: 
>> https://github.com/hibernate/hibernate-orm/wiki/Proposal---Loader-redesign). 
>> I haven't looked at it in detail, but probably we should port it.
>>
>> /Oskar
>>
>>
>> 2014-10-22 14:21 GMT+02:00 Gunnar Liljas <[email protected] 
>> <javascript:>>:
>>
>>> Ok, interesting! I didn't realize that the Java version was still 
>>> important for bug fixing. Maybe bugs caused by said complexity...
>>>
>>>
>>> /Gunnar
>>>
>>> 2014-10-22 10:52 GMT+02:00 Ricardo Peres <[email protected] <javascript:>
>>> >:
>>>
>>>> Hi, Gunnar!
>>>>
>>>> Yes, I feel exactly the same! Just as an example, there are lots of 
>>>> structures for representing an entity or a property's metadata.
>>>> Not entirely related, but maybe this "overengineering" is responsible 
>>>> for some slowness, that is often reported (mostly by non-NHibernate users, 
>>>> it's true).
>>>> However, I think that a major refactoring is not likely to happen, 
>>>> precisely because of Hibernate. We are constantly looking to the Java 
>>>> version for fixes to bugs that show up.
>>>> My 5 cents! :-)
>>>>
>>>> RP
>>>>
>>>>
>>>> On Tuesday, October 21, 2014 10:37:13 PM UTC+1, Gunnar Liljas wrote:
>>>>>
>>>>> When researching bug fixes and enhancements, I'm often struck by the 
>>>>> enormous complexity of the NHibernate code base. It's a complex and very 
>>>>> malleable product, so a high degree of complexity should be expected, but 
>>>>> sometimes when following a query from start to end in the step debugger I 
>>>>> just want to scream "are you frelling kidding me?!". 
>>>>>
>>>>> Of course there's a certain amount of "this shouldn't be so hard" 
>>>>>  followed by "Ah, OK, I didn't think of that. It is hard.", but some/many 
>>>>> parts of the code base feels like it has been mended a few times too many.
>>>>>
>>>>> My question to you, fellow developers, is:
>>>>>
>>>>> 1. How do you feel about this?
>>>>> 2. If massive refactoring is a way forward it would likely result in a 
>>>>> deviation from the Java Hibernate relationship. How do you feel about 
>>>>> that?
>>>>>
>>>>>
>>>>> Best regards
>>>>> Gunnar
>>>>>
>>>>>
>>>>>  -- 
>>>>
>>>> --- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "nhibernate-development" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected] 
>>>> <javascript:>.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>>>
>>> --- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "nhibernate-development" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected] 
>>> <javascript:>.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  -- 
>>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "nhibernate-development" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] 
>> <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to