After some time to reflect on this - I don't think this should be CLOSED, it is actually a bug in the loading order of find() and a Query is capable of doing things correctly. (For some reason it is always easy to accept an explanation of Hibernate's internals as a reason to CLOSE a bug report)
Perhaps when loading chains of Sets, Hibernate could store proxies in a List until sure that they have all been loaded, before creating the Set proxy. Or whatever Query does.
After some time to reflect on this - I don't think this should be CLOSED, it is actually a bug in the loading order of find() and a Query is capable of doing things correctly. (For some reason it is always easy to accept an explanation of Hibernate's internals as a reason to CLOSE a bug report)
Perhaps when loading chains of Sets, Hibernate could store proxies in a List until sure that they have all been loaded, before creating the Set proxy. Or whatever Query does.