The patch is included here:

http://216.121.112.228/browse/NH-2392

I will write tests this week to specifically test that the settability works
as advertised (something which I have already verified in our own code), but
I'm in the middle of a work emergency today.

All the existing unit tests for composite types have already been updated
and still pass.  The only part I was particularly concerned about was the
use of "session.Factory" to get the mapping.

Hope this works out.

          Patrick Earl

On Mon, Oct 25, 2010 at 5:00 AM, Fabio Maulo <[email protected]> wrote:

> #1 but it must be done today.
> I have to release beta2.
>
> --
> Fabio Maulo
>
>
> El 24/10/2010, a las 23:33, Patrick Earl <[email protected]> escribió:
>
> > ICompositeUserType seems to be broken when dynamic-update is true.  It
> > is missing the NullSafeSet override with bool[] settable as an
> > argument.  This causes it to break when there parameters that have
> > been replaced with "is null" elsewhere, and there are no parameter
> > slots to actually fill.  Here are some potential fixes:
> >
> > 1.  Break ICompositeUserType and add the bool[] settable argument.
> > 2.  Break ICompositeUserType and add a separate method with the bool[]
> > settable argument.
> > 3.  Make a new interface such as ICompositeUserTypePartialSetter and
> > add the appropriate method to that.
> >
> > Although ICompositeUserType works in most cases (obviously), I'd still
> > argue that it's fundamentally broken since types created with it will
> > break in surprising ways that the user has no control over.  It
> > doesn't make sense to me as a user that my type should break suddenly
> > if dynamic-update is utilized.  I'd propose that #1 is the best
> > solution from the "future user" perspective.
> >
> > Thoughts on how to undo this unfortunate brokenness?
> >
> >         Patrick Earl
>

Reply via email to