Hi all,

I've made a pull request with a fix.

https://github.com/nhibernate/nhibernate-core/pull/248

Please review.

Best Regards,
Alexander


2014/1/21 Oskar Berggren <[email protected]>

>
> 2014/1/20 Lauri Kotilainen <[email protected]>
>
>>
>>
>> On Saturday, January 18, 2014 11:44:53 PM UTC+2, Oskar Berggren wrote:
>>>
>>>
>>> Unfortunately, even with that patch applied, the unit test in my other
>>>> post fails -- even though a heap inspection with WinDBG confirms that the
>>>> session is no longer rooted and is eligible for collection.
>>>>
>>>
>>> My attempts with dubious knowledge of Windbg seems to confirm that the
>>> test itself did indeed maintain a reference to the SessionImpl instance, as
>>> a local variable in the stack fram of IsGarbageCollected<TObject>(ref
>>> TObject @object, Action<TObject> useObject). I don't know how to explain
>>> that, given that the test code attempted to nullify the reference.
>>>
>>
>> The second GC.Collect() pass fixed that for me, like Gunnar suggested.
>> I'll take another look at it soon-ish to see if your modified test still
>> behaves the way I think it should.
>>
>
> I added a bunch more, plus some other GC.xxx() methods, didn't help.
>
>
>
>> My first attempt at a fix actually was to discard the _expression
>> reference. However, that didn't work -- IIRC because the results of the
>> translation maintained another reference to the expression. Changing that
>> would have had a considerably bigger change footprint, one that I wasn't
>> comfortable with.
>>
>
> I later tried that too and discovered that Translate() is actually called
> twice and apparently produces different output on the second go. I haven't
> yet figured out what input data (or how) is modified to achieve this effect.
>
>
> /Oskar
>
>  --
>
> ---
> 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/groups/opt_out.
>

-- 

--- 
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/groups/opt_out.

Reply via email to