There is a problem with the change made with Bug 174.
Specifically, if there are additions on both sides of a ManyToMany ... then the relationship can easily end up being inserted twice - ending in a constraint violation.
The suggestion is to revert the behaviour back so that a ManyToMany requires Cascade.SAVE before the relationships are saved.
Fixed in HEAD. Put the behaviour back... so now Cascade.SAVE is required for the ManyToMany relationships (inserts/deletes from intersection table) to occur.