Using double association name was a hack to make it hydrate without adding additional code in ResultSet. Using __collection helps me identify if the results are coming from an eager load or just a join. If I detect __collection_ then I don't group the results like a normal association, as it already happened from the other query, so it does not overwrite results form another contain with the same name