I've figured it out. The issue is how NH behaves when given the
following xml fragment:

      <property name="Total"
                formula="( select sum(li.quantity*p.cost) from LineItem li,
Product p where li.productId = p.productId and li.customerId =
customerId and li.orderNumber = orderNumber )">
        <column name="Total" />
      </property>

Obviously it does not make sense to have a column element inside a
property that has a formula attribute. The question though is what
should NH do? In 2.1.x the formula is used. In 3.x the column is used
and the formula is ignored. In my opinion, the ideal behavior would be
to throw an exception.

The real issue is that Fluent NHibernate should not be outputting a
column element when there is a formula attribute. I'll get this fixed.

On Dec 22, 10:50 pm, Fabio Maulo <[email protected]> wrote:
> we have some tests working with formula; have you a failing test ?
>
> 2009/12/22 Paul Batum <[email protected]>
>
> > I grabbed a build of the NH trunk from hornget the other day because I
> > want to try out the new LINQ provider. The build is: nhibernate-
> > trunk-20-12-09-201618
>
> > After rebuilding my app against this build, I now have some failing
> > tests because Formula properties aren't being executed properly.
> > Specifically, the formula properties are treated like normal
> > properties, so I end up getting SqlExceptions saying that certain
> > columns no longer exist.
>
> > Its possible I've just done something really stupid, but I thought it
> > would be worth checking.. is it at all likely that formula columns are
> > currently broken in the trunk?
>
> --
> Fabio Maulo

Reply via email to