Would it be faster/simpler to just reload the association data from the database? Or is there a good chance some of the joint entites could have pending changes?