New version of Activerecord gives different result

I am sorry, but I am struggling. I installed new versions of my gems and
my programs don't run anymore. As suggested I tried to roll back to
older versions, but that is becoming a bigger mess. The flight forward
has at least recovered 90% of my application.

Both statement worked perfect with the old version of activerecord.
Now the first one works okay, the last one does not get the join built
up in the sql statement.

Again thanks for all the help.
Ernst

This statement works:

owner = Owner.find(:all, :include => {:accounts => {:orders =>{}}},
:conditions => ['Orders.flag = 0'],
:order => ['owners.name, accounts.name, orders.id'])

This statement does not work:
owner = Owner.find(:all,
    :include => {:accounts => {:trades =>{}}},
:order => ['owners.name, accounts.name, trades.underlying, trades.month,
trades.strategy'] )

I found a work around dirty but for now it works.

The difference between the statements is the use of the conditions part.

I added a fake condition

:conditions => ['trades.id = trades.id']

and now the joins is built as I want.

Definitely a difference between activerecord versions.

Would still appreciate a comment from a experience programmer.

Eager loading (:include) changed substantially in 2.1 but should be
able to fallback to the previous code in cases like this.
You've confused the fallback code by giving an array to :order where
you should only be giving a string (the first example works because
the conditions options is able to trigger the fallback.

Fred